summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPranith Kumar K <pkarampu@redhat.com>2015-07-08 17:52:11 +0530
committerXavier Hernandez <xhernandez@datalab.es>2015-07-09 00:06:20 -0700
commita6ba145589b626f4254873cd2dffcee37cbbd345 (patch)
tree9cfe97e68d9720eeb77ae1ab8e8473c5ec02fdd3
parent34b3b00e5531c3992d913a65f60fe35f78b20f08 (diff)
cluster/ec: Don't read from bricks that are healing
BUG: 1232678 Change-Id: I35503039e4723cf7f33d6797f0ba90dd0aca130b Signed-off-by: Pranith Kumar K <pkarampu@redhat.com> Reviewed-on: http://review.gluster.org/11580 Tested-by: NetBSD Build System <jenkins@build.gluster.org> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Xavier Hernandez <xhernandez@datalab.es>
-rw-r--r--xlators/cluster/ec/src/ec-common.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/xlators/cluster/ec/src/ec-common.c b/xlators/cluster/ec/src/ec-common.c
index 41adbb4c508..af5a30fe3de 100644
--- a/xlators/cluster/ec/src/ec-common.c
+++ b/xlators/cluster/ec/src/ec-common.c
@@ -414,7 +414,7 @@ int32_t ec_child_select(ec_fop_data_t * fop)
* head/tail read in case of writev fop. Unlocks shouldn't do this because
* unlock should go on all subvols where lock is performed*/
if (fop->parent && !ec_must_wind (fop))
- fop->mask &= fop->parent->mask;
+ fop->mask &= (fop->parent->mask & ~fop->parent->healing);
mask = ec->xl_up;
if (fop->parent == NULL)