diff options
-rw-r--r-- | configure.ac | 9 | ||||
-rw-r--r-- | xlators/mount/fuse/src/fuse-bridge.c | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index e32ccedfd..1d72047ce 100644 --- a/configure.ac +++ b/configure.ac @@ -321,9 +321,18 @@ if test "x$enable_fuse_client" != "xno"; then , [HAVE_FUSE_VERSION_28="yes"], [HAVE_FUSE_VERSION_28="no"]) + + AC_CHECK_LIB([fuse], + [fuse_reply_iov], + [HAVE_FUSE_REPLY_IOV="yes"], + [HAVE_FUSE_REPLY_IOV="no"]) + fi fi +if test "x$HAVE_FUSE_REPLY_IOV" = "xyes"; then + AC_DEFINE(HAVE_FUSE_REPLY_IOV, 1, [found fuse_reply_iov]) +fi if test "x$HAVE_LIBFUSE" = "xyes" -a "x$HAVE_FUSE_VERSION_28" = "xyes"; then AC_DEFINE(HAVE_FUSE_VERSION_28, 1, [found fuse 2.8 version]) diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c index e938db72f..210fbef2a 100644 --- a/xlators/mount/fuse/src/fuse-bridge.c +++ b/xlators/mount/fuse/src/fuse-bridge.c @@ -1466,7 +1466,11 @@ fuse_readv_cbk (call_frame_t *frame, void *cookie, xlator_t *this, frame->root->unique, op_ret, state->size, state->off, stbuf->st_size); +#ifdef HAVE_FUSE_REPLY_IOV + fuse_reply_iov (req, vector, count); +#else fuse_reply_vec (req, vector, count); +#endif } else { gf_log ("glusterfs-fuse", GF_LOG_WARNING, "%"PRId64": READ => %d (%s)", frame->root->unique, |