summaryrefslogtreecommitdiffstats
path: root/sys/fs/fuse/fuse_vnops.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/fs/fuse/fuse_vnops.c')
-rw-r--r--sys/fs/fuse/fuse_vnops.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/fs/fuse/fuse_vnops.c b/sys/fs/fuse/fuse_vnops.c
index 820d69f..f2d0188 100644
--- a/sys/fs/fuse/fuse_vnops.c
+++ b/sys/fs/fuse/fuse_vnops.c
@@ -1173,6 +1173,11 @@ fuse_vnop_read(struct vop_read_args *ap)
if (fuse_isdeadfs(vp)) {
return ENXIO;
}
+
+ if (VTOFUD(vp)->flag & FN_DIRECTIO) {
+ ioflag |= IO_DIRECT;
+ }
+
return fuse_io_dispatch(vp, uio, ioflag, cred);
}
@@ -1712,6 +1717,10 @@ fuse_vnop_write(struct vop_write_args *ap)
}
fuse_vnode_refreshsize(vp, cred);
+ if (VTOFUD(vp)->flag & FN_DIRECTIO) {
+ ioflag |= IO_DIRECT;
+ }
+
return fuse_io_dispatch(vp, uio, ioflag, cred);
}
OpenPOWER on IntegriCloud