[Cluster-devel] Cluster Project branch, master, updated. gfs-kernel_0_1_22-84-gc2b3b2b

teigland at sourceware.org teigland at sourceware.org
Wed Mar 19 21:21:09 UTC 2008


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=c2b3b2b7be437bc4476326dcfe58e9f2b6c55d48

The branch, master has been updated
       via  c2b3b2b7be437bc4476326dcfe58e9f2b6c55d48 (commit)
      from  b1c2b5e5c36f3ed806593716790d8834892182da (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 c2b3b2b7be437bc4476326dcfe58e9f2b6c55d48
Author: Joel Becker <joel.becker at oracle.com>
Date:   Wed Mar 19 16:08:49 2008 -0500

    libdlm: Don't pass LKF_WAIT to the kernel
    
    libdlm is passing LKF_WAIT to the kernel.  In the kernel, the unlock
    path strictly audits flags, and errors on this unknown (to the kernel)
    flag.  The correct answer is to keep the flag in userspace.
    
    Signed-off-by: Joel Becker <joel.becker at oracle.com>
    Signed-off-by: David Teigland <teigland at redhat.com>

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

Summary of changes:
 dlm/lib/libdlm.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlm/lib/libdlm.c b/dlm/lib/libdlm.c
index d182095..4bafbbc 100644
--- a/dlm/lib/libdlm.c
+++ b/dlm/lib/libdlm.c
@@ -754,7 +754,7 @@ static int ls_lock_v5(dlm_lshandle_t ls,
 
 	req->cmd = DLM_USER_LOCK;
 	req->i.lock.mode = mode;
-	req->i.lock.flags = flags;
+	req->i.lock.flags = (flags & ~LKF_WAIT);
 	req->i.lock.lkid = lksb->sb_lkid;
 	req->i.lock.parent = parent;
 	req->i.lock.lksb = lksb;
@@ -822,7 +822,7 @@ static int ls_lock_v6(dlm_lshandle_t ls,
 
 	req->cmd = DLM_USER_LOCK;
 	req->i.lock.mode = mode;
-	req->i.lock.flags = flags;
+	req->i.lock.flags = (flags & ~LKF_WAIT);
 	req->i.lock.lkid = lksb->sb_lkid;
 	req->i.lock.parent = parent;
 	req->i.lock.lksb = lksb;
@@ -1019,7 +1019,7 @@ static int ls_unlock_v5(struct dlm_ls_info *lsinfo, uint32_t lkid,
 	set_version_v5(&req);
 	req.cmd = DLM_USER_UNLOCK;
 	req.i.lock.lkid = lkid;
-	req.i.lock.flags = flags;
+	req.i.lock.flags = (flags & ~LKF_WAIT);
 	req.i.lock.lksb  = lksb;
 	req.i.lock.castparam = astarg;
 	/* DLM_USER_UNLOCK will default to existing completion AST */
@@ -1040,7 +1040,7 @@ static int ls_unlock_v6(struct dlm_ls_info *lsinfo, uint32_t lkid,
 	set_version_v6(&req);
 	req.cmd = DLM_USER_UNLOCK;
 	req.i.lock.lkid = lkid;
-	req.i.lock.flags = flags;
+	req.i.lock.flags = (flags & ~LKF_WAIT);
 	req.i.lock.lksb  = lksb;
 	req.i.lock.namelen = 0;
 	req.i.lock.castparam = astarg;


hooks/post-receive
--
Cluster Project




More information about the Cluster-devel mailing list