diff options
author | Amar Tumballi <amarts@redhat.com> | 2012-03-20 17:22:24 +0530 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2012-03-22 16:40:27 -0700 |
commit | 9d3af972f516b6ba38d2736ce2016e34a452d569 (patch) | |
tree | 1dcdc620748a42cdfb5464c3adaae5a4a3a6f869 /xlators/features/locks/src/clear.c | |
parent | afe542eca18888463798747d2a95e5a9d239a4a0 (diff) |
core: adding extra data for fops
with this change, the xlator APIs will have a dictionary as extra
argument, which is passed between all the layers. This can be
utilized for overloading in some of the operations.
Change-Id: I58a8186b3ef647650280e63f3e5e9b9de7827b40
Signed-off-by: Amar Tumballi <amarts@redhat.com>
BUG: 782265
Reviewed-on: http://review.gluster.com/2960
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/features/locks/src/clear.c')
-rw-r--r-- | xlators/features/locks/src/clear.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/xlators/features/locks/src/clear.c b/xlators/features/locks/src/clear.c index 6c6afe008be..a4e235886e2 100644 --- a/xlators/features/locks/src/clear.c +++ b/xlators/features/locks/src/clear.c @@ -193,8 +193,8 @@ clrlk_clear_posixlk (xlator_t *this, pl_inode_t *pl_inode, clrlk_args *args, F_SETLKW, &plock->user_flock, -1, EAGAIN, NULL); - STACK_UNWIND (plock->frame, -1, EAGAIN, - &plock->user_flock); + STACK_UNWIND_STRICT (lk, plock->frame, -1, EAGAIN, + &plock->user_flock, NULL); } else { gcount++; @@ -261,7 +261,7 @@ blkd: &ilock->user_flock, -1, EAGAIN, ilock->volume); STACK_UNWIND_STRICT (inodelk, ilock->frame, -1, - EAGAIN); + EAGAIN, NULL); //No need to take lock as the locks are only in one list __pl_inodelk_unref (ilock); } @@ -335,6 +335,7 @@ blkd: } bcount++; + list_del_init (&elock->blocked_locks); list_add_tail (&elock->blocked_locks, &released); } @@ -346,7 +347,7 @@ blkd: entrylk_trace_out (this, elock->frame, elock->volume, NULL, NULL, elock->basename, ENTRYLK_LOCK, elock->type, -1, EAGAIN); - STACK_UNWIND_STRICT (entrylk, elock->frame, -1, EAGAIN); + STACK_UNWIND_STRICT (entrylk, elock->frame, -1, EAGAIN, NULL); GF_FREE ((char *) elock->basename); GF_FREE (elock); } |