From 8861e84d3fb7518cae2c1f2fa733ba85a2ab560d Mon Sep 17 00:00:00 2001 From: Raghavendra Talur Date: Thu, 25 Jun 2015 02:18:42 +0530 Subject: [PATCH 177/190] storage/posix: Check xdata for NULL before dict_get Backport of http://review.gluster.org/#/c/11417/ Backport of http://review.gluster.org/#/c/11390 Performing a dict_get on xdata can lead to frequent logging if xdata is NULL. Change-Id: I1666f0cc958c639ccd816e3738dd4a1efebbff82 BUG: 1235940 Signed-off-by: Raghavendra Talur Reviewed-on: https://code.engineering.redhat.com/gerrit/51689 Reviewed-by: Nithya Balachandran Reviewed-by: Raghavendra Gowdappa Tested-by: Raghavendra Gowdappa --- xlators/storage/posix/src/posix.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/xlators/storage/posix/src/posix.c b/xlators/storage/posix/src/posix.c index a2e484e..91e95ef 100644 --- a/xlators/storage/posix/src/posix.c +++ b/xlators/storage/posix/src/posix.c @@ -3295,7 +3295,7 @@ posix_setxattr (call_frame_t *frame, xlator_t *this, * This is used by DHT to redirect FOPs if the file is being migrated * Ignore errors for now */ - if (dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { + if (xdata && dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { ret = posix_pstat(this, loc->gfid, real_path, &stbuf); if (ret) goto out; @@ -4399,7 +4399,7 @@ posix_fsetxattr (call_frame_t *frame, xlator_t *this, } } - if (dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { + if (xdata && dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { ret = posix_fdstat (this, pfd->fd, &stbuf); if (ret == -1) { gf_log (this->name, GF_LOG_ERROR, @@ -4540,7 +4540,7 @@ posix_removexattr (call_frame_t *frame, xlator_t *this, goto out; } - if (dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { + if (xdata && dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { ret = posix_pstat(this, loc->gfid, real_path, &stbuf); if (ret) goto out; @@ -4612,7 +4612,7 @@ posix_fremovexattr (call_frame_t *frame, xlator_t *this, goto out; } - if (dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { + if (xdata && dict_get (xdata, DHT_IATT_IN_XDATA_KEY)) { ret = posix_fdstat (this, pfd->fd, &stbuf); if (ret) goto out; -- 1.7.1