From 52f3aac6d80aea5d7c531005cb621463806000af Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Sun, 20 May 2012 21:02:55 +0530 Subject: cluster/afr: Unlock higher entry locks in rename entrylk failure. Change-Id: I4646809ec86baf4b741a874353dbf27fbffb4791 BUG: 823255 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.com/3381 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- xlators/cluster/afr/src/afr-lk-common.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'xlators') diff --git a/xlators/cluster/afr/src/afr-lk-common.c b/xlators/cluster/afr/src/afr-lk-common.c index 7e897a166..92356c82e 100644 --- a/xlators/cluster/afr/src/afr-lk-common.c +++ b/xlators/cluster/afr/src/afr-lk-common.c @@ -57,6 +57,9 @@ int afr_lock_blocking (call_frame_t *frame, xlator_t *this, int child_index); +static int +afr_copy_locked_nodes (call_frame_t *frame, xlator_t *this); + static uint64_t afr_lock_number = 1; static uint64_t @@ -860,6 +863,7 @@ afr_lock_lower_cbk (call_frame_t *frame, void *cookie, xlator_t *this, UNLOCK (&frame->lock); if (op_ret != 0) { + afr_copy_locked_nodes (frame, this); afr_unlock (frame, this); goto out; } else { -- cgit