This is the mail archive of the cluster-cvs@sourceware.org mailing list for the cluster.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Cluster Project branch, RHEL46, updated. cman-kernel_2_6_9_54-13-g1728dd2


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Cluster Project".

http://sources.redhat.com/git/gitweb.cgi?p=cluster.git;a=commitdiff;h=1728dd23f74b9d01df5146e9b405c3149b896bc7

The branch, RHEL46 has been updated
       via  1728dd23f74b9d01df5146e9b405c3149b896bc7 (commit)
      from  d47add8e2cee5bd9fa50584f4d72650aa727d55c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1728dd23f74b9d01df5146e9b405c3149b896bc7
Author: David Teigland <teigland@redhat.com>
Date:   Mon May 5 13:43:16 2008 -0500

    lock_dlm: ignore dlm EBUSY on plock unlock
    
    bz 432707
    
    The previous commit for this bug didn't resolve all the cases of
    EBUSY assertions from plock unlocks.  As suggested in the previous
    commit message, this patch just ignores -EBUSY errors returned for
    plock unlocks instead of asserting.
    
    Signed-off-by: David Teigland <teigland@redhat.com>
    
    bz 440665 (for 4.6.z)

-----------------------------------------------------------------------

Summary of changes:
 gfs-kernel/src/dlm/lock.c |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/gfs-kernel/src/dlm/lock.c b/gfs-kernel/src/dlm/lock.c
index bd71c2c..2528314 100644
--- a/gfs-kernel/src/dlm/lock.c
+++ b/gfs-kernel/src/dlm/lock.c
@@ -354,8 +354,16 @@ void do_dlm_unlock(dlm_lock_t *lp)
 
 	error = dlm_unlock(lp->dlm->gdlm_lsp, lp->lksb.sb_lkid, lkf, NULL, lp);
 
-	
-	DLM_ASSERT(!error || (plock && error == -EINPROGRESS),
+	if (plock) {
+		if (error == -EINPROGRESS || error == -EBUSY) {
+			log_all("do_dlm_unlock %x,%"PRIx64" flags %lx error %d",
+				lp->lockname.ln_type, lp->lockname.ln_number,
+				lp->flags, error);
+			return;
+		}
+	}
+
+	DLM_ASSERT(!error,
 		   printk("%s: error=%d num=%x,%"PRIx64" lkf=%x flags=%lx\n",
 			  lp->dlm->fsname, error, lp->lockname.ln_type,
 			  lp->lockname.ln_number, lp->lkf, lp->flags););


hooks/post-receive
--
Cluster Project


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]