Commit 53ad1c980d4fb450722a575ca17c188808939340
1 parent
dd775ae254
Exists in
smarc-l5.0.0_1.0.0-ga
and in
5 other branches
dlm: fix QUECVT when convert queue is empty
The QUECVT flag should not prevent conversions from being granted immediately when the convert queue is empty. Signed-off-by: David Teigland <teigland@redhat.com>
Showing 1 changed file with 12 additions and 0 deletions Side-by-side Diff
fs/dlm/lock.c
... | ... | @@ -1737,6 +1737,18 @@ |
1737 | 1737 | return 1; |
1738 | 1738 | |
1739 | 1739 | /* |
1740 | + * Even if the convert is compat with all granted locks, | |
1741 | + * QUECVT forces it behind other locks on the convert queue. | |
1742 | + */ | |
1743 | + | |
1744 | + if (now && conv && (lkb->lkb_exflags & DLM_LKF_QUECVT)) { | |
1745 | + if (list_empty(&r->res_convertqueue)) | |
1746 | + return 1; | |
1747 | + else | |
1748 | + goto out; | |
1749 | + } | |
1750 | + | |
1751 | + /* | |
1740 | 1752 | * The NOORDER flag is set to avoid the standard vms rules on grant |
1741 | 1753 | * order. |
1742 | 1754 | */ |