public inbox for cluster-cvs@sourceware.org
help / color / mirror / Atom feed
* Cluster Project branch, RHEL46, updated. cman-kernel_2_6_9_54-8-g1c9932d
@ 2008-04-16 19:21 cfeist
  0 siblings, 0 replies; only message in thread
From: cfeist @ 2008-04-16 19:21 UTC (permalink / raw)
  To: cluster-cvs, cluster-devel

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=1c9932d3cc533daedac7cfb3a50b7d6ff8d07990

The branch, RHEL46 has been updated
       via  1c9932d3cc533daedac7cfb3a50b7d6ff8d07990 (commit)
      from  16b6a74c24d437cacd136d3376cae61eb45a4e38 (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 1c9932d3cc533daedac7cfb3a50b7d6ff8d07990
Author: David Teigland <teigland@redhat.com>
Date:   Thu Feb 28 09:49:26 2008 -0600

    lock_dlm: skip busy plocks in unlock
    
    bz 432707
    
    Another problem with multiple threads manipulating the same
    plocks (also see bz 383391).  In this case thread1 was waiting
    on a plock that was in the dlm, when thread2 came and tried to
    unlock it (due to the process exiting and closing all files).
    dlm returns EBUSY for the unlock, which causes lock_dlm to assert
    (another work around could be to just not assert on EBUSY.)
    The "busy" flag was recently added to plocks to work around
    another similar problem with multiple threads; use that to
    just skip the unlock on any plock that's busy.
    
    4.6.z bz#440665

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

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

diff --git a/gfs-kernel/src/dlm/plock.c b/gfs-kernel/src/dlm/plock.c
index bc4cfc4..e1bc46d 100644
--- a/gfs-kernel/src/dlm/plock.c
+++ b/gfs-kernel/src/dlm/plock.c
@@ -833,6 +833,8 @@ static int punlock_internal(struct dlm_resource *r, unsigned long owner,
 	list_for_each_entry_safe(po, safe, &r->locks, list) {
 		if (po->owner != owner)
 			continue;
+		if (po->busy)
+			continue;
 		if (!ranges_overlap(po->start, po->end, start, end))
 			continue;
 


hooks/post-receive
--
Cluster Project


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-04-16 19:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-16 19:21 Cluster Project branch, RHEL46, updated. cman-kernel_2_6_9_54-8-g1c9932d cfeist

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).