From 96e3426354bbd166c8c0224060132479c350aa2b Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Thu, 11 Jun 2015 14:44:48 +0530 Subject: cluster/ec: Prevent Null dereference in dht-rename Backport of http://review.gluster.com/11178 BUG: 1230653 Change-Id: I708d4d84b1341fb7cb515808836721735dc63f14 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/11179 Tested-by: Gluster Build System Reviewed-by: Xavier Hernandez --- tests/basic/ec/dht-rename.t | 19 +++++++++++++++++++ xlators/cluster/ec/src/ec-common.c | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 tests/basic/ec/dht-rename.t diff --git a/tests/basic/ec/dht-rename.t b/tests/basic/ec/dht-rename.t new file mode 100644 index 00000000000..81b41ff4c78 --- /dev/null +++ b/tests/basic/ec/dht-rename.t @@ -0,0 +1,19 @@ +#!/bin/bash + +. $(dirname $0)/../../include.rc +. $(dirname $0)/../../volume.rc + +# This test checks notify part of ec + +cleanup +TEST glusterd +TEST pidof glusterd +TEST $CLI volume create $V0 disperse 3 redundancy 1 $H0:$B0/${V0}{0..5} +TEST $CLI volume start $V0 + +TEST $GFS --volfile-id=/$V0 --volfile-server=$H0 $M0; +EXPECT_WITHIN $CHILD_UP_TIMEOUT "3" ec_child_up_count $V0 0 + +TEST touch $M0/1 +TEST mv $M0/1 $M0/10 +cleanup diff --git a/xlators/cluster/ec/src/ec-common.c b/xlators/cluster/ec/src/ec-common.c index 062754b2aba..05dd386ec65 100644 --- a/xlators/cluster/ec/src/ec-common.c +++ b/xlators/cluster/ec/src/ec-common.c @@ -1145,7 +1145,7 @@ void ec_get_real_size(ec_lock_link_t *link) ec_fop_data_t *fop; dict_t *xdata; - if (link->base == NULL) { + if (link->base == NULL || link->base->inode == NULL) { return; } -- cgit