Commit 53ad1c980d4fb450722a575ca17c188808939340

Authored by David Teigland
1 parent dd775ae254

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

... ... @@ -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 */