From 761b9d3ffc953c24ceb55d8e12ff7e02b17e0484 Mon Sep 17 00:00:00 2001 From: David Teigland Date: Thu, 21 Feb 2008 11:25:42 -0600 Subject: dlm: save master info after failed no-queue request When a NOQUEUE request fails, the rsb res_master field is unnecessarily reset to -1, instead of leaving the valid master setting in place. We want to save the looked-up master values while the rsb is on the "toss list" so that another lookup can be avoided if the rsb is soon reused. The fix is to simply leave res_master value alone. Signed-off-by: David Teigland --- fs/dlm/lock.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'fs/dlm') diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c index 1e9e8ebee25..2d3d1027ce2 100644 --- a/fs/dlm/lock.c +++ b/fs/dlm/lock.c @@ -1956,8 +1956,7 @@ static void confirm_master(struct dlm_rsb *r, int error) list_del_init(&lkb->lkb_rsb_lookup); r->res_first_lkid = lkb->lkb_id; _request_lock(r, lkb); - } else - r->res_nodeid = -1; + } break; default: -- cgit v1.2.3