Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 27922b4260f65d317aabda37e42bbbff > files > 665

kernel-2.6.18-238.el5.src.rpm

From: David Teigland <teigland@redhat.com>
Date: Thu, 5 Jun 2008 14:10:51 -0500
Subject: [dlm] save master info after failed no-queue request
Message-id: 20080605191051.GO18635@redhat.com
O-Subject: [RHEL5.3 PATCH 15/18] dlm: save master info after failed no-queue request
Bugzilla: 450135
RH-Acked-by: Bob Peterson <rpeterso@redhat.com>

bz 450135  dlm: save master info after failed no-queue request

brew build including this patch
http://brewweb.devel.redhat.com/brew/taskinfo?taskID=1344633

upstream commit:

>From 761b9d3ffc953c24ceb55d8e12ff7e02b17e0484 Mon Sep 17 00:00:00 2001
>From: David Teigland <teigland@redhat.com>
>Date: Thu, 21 Feb 2008 11:25:42 -0600
>Subject: [PATCH] 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 <teigland@redhat.com>

diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c
index c723954..ea6a136 100644
--- a/fs/dlm/lock.c
+++ b/fs/dlm/lock.c
@@ -1951,8 +1951,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: