From 245eec73fb26654608b2524317f4a4af5f9ef61c Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Sun, 14 Sep 2014 16:51:25 +0530 Subject: cluster/afr: Handle EAGAIN properly in inodelk Problem: When one of the brick is taken down and brough back up in a replica pair, locks on that brick will be allowed. Afr returns inodelk success even when one of the bricks already has the lock taken. Fix: If any brick returns EAGAIN return failure to parent xlator. Change-Id: I5b842d0fc094359cc4231494053d2bfeb606bbbe BUG: 1141539 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/8710 Reviewed-by: Krutika Dhananjay Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- xlators/cluster/afr/src/afr.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'xlators/cluster/afr/src/afr.h') diff --git a/xlators/cluster/afr/src/afr.h b/xlators/cluster/afr/src/afr.h index c8224e16ab7..cca964d9178 100644 --- a/xlators/cluster/afr/src/afr.h +++ b/xlators/cluster/afr/src/afr.h @@ -616,6 +616,11 @@ typedef struct _afr_local { struct iatt postbuf; } zerofill; + struct { + const char *volume; + int32_t cmd; + struct gf_flock flock; + } inodelk; } cont; -- cgit