Scanning of lr_granted can be done until
covering granted RD lock is reached.
Lustre-change: https://review.whamcloud.com/45957
Lustre-commit:
b07a57027ee5cc1afa82cc4c82be73a2c4894502
Change-Id: I907cff002d9765c5f8496d377eddd5e62795d89c
HPE-bug-id: LUS-10623
Signed-off-by: Andriy Skulysh <c17819@cray.com>
Reviewed-on: https://review.whamcloud.com/48323
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
continue;
}
+ if (req->l_req_mode == LCK_PR &&
+ lock->l_granted_mode == LCK_PR &&
+ lock->l_policy_data.l_flock.start <=
+ req->l_policy_data.l_flock.start &&
+ lock->l_policy_data.l_flock.end >=
+ req->l_policy_data.l_flock.end) {
+ /* there can't be granted WR lock */
+ break;
+ }
/* locks are compatible, overlap doesn't matter */
if (lockmode_compat(lock->l_granted_mode, mode))
continue;