diff options
author | Kukjin Kim <kgene.kim@samsung.com> | 2012-05-13 06:48:21 +0900 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2012-05-13 06:48:21 +0900 |
commit | 2870f5352451a99a364a807803e4c39477264c3c (patch) | |
tree | 11ee9795559bdc9645a0a17815611c624066c515 /fs/dlm/lock.c | |
parent | 06c77b3ce1b81163d74d9d5e904de731934e8510 (diff) | |
parent | 5fdbdd1d4b9ec58e51092e24c231a303b38cdb94 (diff) |
Merge branch 'next/cleanup-samsung-macro' into next/cleanup-samsung
Diffstat (limited to 'fs/dlm/lock.c')
-rw-r--r-- | fs/dlm/lock.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c index fa5c07d51dcc..4c58d4a3adc4 100644 --- a/fs/dlm/lock.c +++ b/fs/dlm/lock.c @@ -1737,6 +1737,18 @@ static int _can_be_granted(struct dlm_rsb *r, struct dlm_lkb *lkb, int now) return 1; /* + * Even if the convert is compat with all granted locks, + * QUECVT forces it behind other locks on the convert queue. + */ + + if (now && conv && (lkb->lkb_exflags & DLM_LKF_QUECVT)) { + if (list_empty(&r->res_convertqueue)) + return 1; + else + goto out; + } + + /* * The NOORDER flag is set to avoid the standard vms rules on grant * order. */ |