[GFS2] add plock owner
authorDavid Teigland <teigland@redhat.com>
Fri, 28 Jul 2006 19:00:20 +0000 (14:00 -0500)
committerSteven Whitehouse <swhiteho@redhat.com>
Mon, 31 Jul 2006 19:44:29 +0000 (15:44 -0400)
We need to use fl_owner instead of fl_pid to track the owner of a posix
lock.  Pass the owner value out to user space where cluster plocks are
managed.

Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/gfs2/locking/dlm/plock.c
include/linux/lock_dlm_plock.h

index 6adfb2d..e5b11f0 100644 (file)
@@ -77,6 +77,7 @@ int gdlm_plock(lm_lockspace_t *lockspace, struct lm_lockname *name,
        op->info.number         = name->ln_number;
        op->info.start          = fl->fl_start;
        op->info.end            = fl->fl_end;
+       op->info.owner          = (__u64)(long) fl->fl_owner;
 
        send_op(op);
        wait_event(recv_wq, (op->done != 0));
@@ -122,6 +123,7 @@ int gdlm_punlock(lm_lockspace_t *lockspace, struct lm_lockname *name,
        op->info.number         = name->ln_number;
        op->info.start          = fl->fl_start;
        op->info.end            = fl->fl_end;
+       op->info.owner          = (__u64)(long) fl->fl_owner;
 
        send_op(op);
        wait_event(recv_wq, (op->done != 0));
index 007b07a..fc34151 100644 (file)
@@ -12,7 +12,7 @@
 #define GDLM_PLOCK_MISC_NAME           "lock_dlm_plock"
 
 #define GDLM_PLOCK_VERSION_MAJOR       1
-#define GDLM_PLOCK_VERSION_MINOR       0
+#define GDLM_PLOCK_VERSION_MINOR       1
 #define GDLM_PLOCK_VERSION_PATCH       0
 
 enum {
@@ -34,6 +34,7 @@ struct gdlm_plock_info {
        __u64 number;
        __u64 start;
        __u64 end;
+       __u64 owner;
 };
 
 #endif