diff options
author | N Balachandran <nbalacha@redhat.com> | 2017-08-08 22:33:24 +0530 |
---|---|---|
committer | Raghavendra G <rgowdapp@redhat.com> | 2017-08-09 02:44:41 +0000 |
commit | 747a08d34e2a1e94d7fce68a3577370288bb1955 (patch) | |
tree | 35e66a3f962730c521331337a150136d3a66114d /xlators/cluster/dht/src/dht-helper.c | |
parent | c13d69babc228a2932994962d6ea8afe2cdd620a (diff) |
cluster/dht: EBADF handling for fremovexattr and fsetxattr
Add EBADF handling for dht_fremovexattr and dht_fsetxattr.
Change-Id: Ide0d5812dae79655d2565157e5baabcd753b4309
BUG: 1476665
Signed-off-by: N Balachandran <nbalacha@redhat.com>
Reviewed-on: https://review.gluster.org/17999
Smoke: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Shyamsundar Ranganathan <srangana@redhat.com>
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
Diffstat (limited to 'xlators/cluster/dht/src/dht-helper.c')
-rw-r--r-- | xlators/cluster/dht/src/dht-helper.c | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/xlators/cluster/dht/src/dht-helper.c b/xlators/cluster/dht/src/dht-helper.c index b81e438af98..86040705445 100644 --- a/xlators/cluster/dht/src/dht-helper.c +++ b/xlators/cluster/dht/src/dht-helper.c @@ -305,7 +305,6 @@ dht_check_and_open_fd_on_subvol_complete (int ret, call_frame_t *frame, switch (fop) { case GF_FOP_WRITE: - STACK_WIND_COOKIE (frame, dht_writev_cbk, subvol, subvol, subvol->fops->writev, fd, local->rebalance.vector, @@ -316,13 +315,11 @@ dht_check_and_open_fd_on_subvol_complete (int ret, call_frame_t *frame, break; case GF_FOP_FLUSH: - STACK_WIND (frame, dht_flush_cbk, subvol, subvol->fops->flush, fd, local->xattr_req); break; case GF_FOP_FSETATTR: - STACK_WIND_COOKIE (frame, dht_file_setattr_cbk, subvol, subvol, subvol->fops->fsetattr, fd, &local->rebalance.stbuf, @@ -380,6 +377,20 @@ dht_check_and_open_fd_on_subvol_complete (int ret, call_frame_t *frame, local->xattr_req); break; + case GF_FOP_FSETXATTR: + STACK_WIND_COOKIE (frame, dht_file_setxattr_cbk, subvol, + subvol, subvol->fops->fsetxattr, local->fd, + local->rebalance.xattr, + local->rebalance.flags, local->xattr_req); + break; + + case GF_FOP_FREMOVEXATTR: + STACK_WIND_COOKIE (frame, dht_file_removexattr_cbk, subvol, + subvol, subvol->fops->fremovexattr, + local->fd, local->key, local->xattr_req); + + break; + default: gf_msg (this->name, GF_LOG_ERROR, 0, DHT_MSG_UNKNOWN_FOP, @@ -445,6 +456,14 @@ handle_err: DHT_STACK_UNWIND (fstat, frame, -1, op_errno, NULL, NULL); break; + case GF_FOP_FSETXATTR: + DHT_STACK_UNWIND (fsetxattr, frame, -1, op_errno, NULL); + break; + + case GF_FOP_FREMOVEXATTR: + DHT_STACK_UNWIND (fremovexattr, frame, -1, op_errno, NULL); + break; + default: gf_msg (this->name, GF_LOG_ERROR, 0, DHT_MSG_UNKNOWN_FOP, |