From d01f7244e9d9f7e3ef84e0ba7b48ef1b1b09d809 Mon Sep 17 00:00:00 2001 From: Kinglong Mee Date: Mon, 12 Feb 2018 15:13:49 +0800 Subject: gfapi: return pre/post attributes from glfs_pread/pwrite As nfs-ganesha, a wcc data contains pre/post attributes is return in read/write rpc reply. nfs-ganesha get those attributes by two getattr between the real read/write right now. But, gluster has return pre/post attributes from glusterfsd, those attributes are skipped in syncop/gfapi, if gfapi return them, the upper user (nfs-ganesha) can use them directly without any duplicate getattr. Updates: #389 Change-Id: I7b643ae4241cfe2aeb17063de00192d81674024a Signed-off-by: Kinglong Mee --- xlators/cluster/afr/src/afr-self-heal-data.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'xlators/cluster/afr/src') diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c index c033a8afc07..bc710ea458f 100644 --- a/xlators/cluster/afr/src/afr-self-heal-data.c +++ b/xlators/cluster/afr/src/afr-self-heal-data.c @@ -128,7 +128,7 @@ __afr_is_sink_zero_filled (xlator_t *this, fd_t *fd, size_t size, priv = this->private; ret = syncop_readv (priv->children[sink], fd, size, offset, 0, &iovec, - &count, &iobref, NULL, NULL); + &count, &iobref, NULL, NULL, NULL); if (ret < 0) goto out; ret = iov_0filled (iovec, count); @@ -158,7 +158,7 @@ __afr_selfheal_data_read_write (call_frame_t *frame, xlator_t *this, fd_t *fd, priv = this->private; ret = syncop_readv (priv->children[source], fd, size, offset, 0, - &iovec, &count, &iobref, NULL, NULL); + &iovec, &count, &iobref, NULL, NULL, NULL); if (ret <= 0) return ret; @@ -207,7 +207,7 @@ __afr_selfheal_data_read_write (call_frame_t *frame, xlator_t *this, fd_t *fd, } ret = syncop_writev (priv->children[i], fd, iovec, count, - offset, iobref, 0, NULL, NULL); + offset, iobref, 0, NULL, NULL, NULL, NULL); if (ret != iov_length (iovec, count)) { /* write() failed on this sink. unset the corresponding member in sinks[] (which is healed_sinks[] in the -- cgit