summaryrefslogtreecommitdiffstats
path: root/fs/fuse/fuse_i.h
diff options
context:
space:
mode:
authorEric Wong2013-02-06 23:29:01 +0100
committerMiklos Szeredi2013-02-07 14:25:44 +0100
commit634734b63ac39e137a1c623ba74f3e062b6577db (patch)
tree65e2414fb7d31005d473719f7158f29bc9ca48d0 /fs/fuse/fuse_i.h
parentSynchronize fuse header with one used in library (diff)
downloadkernel-qcow2-linux-634734b63ac39e137a1c623ba74f3e062b6577db.tar.gz
kernel-qcow2-linux-634734b63ac39e137a1c623ba74f3e062b6577db.tar.xz
kernel-qcow2-linux-634734b63ac39e137a1c623ba74f3e062b6577db.zip
fuse: allow control of adaptive readdirplus use
For some filesystems (e.g. GlusterFS), the cost of performing a normal readdir and readdirplus are identical. Since adaptively using readdirplus has no benefit for those systems, give users/filesystems the option to control adaptive readdirplus use. v2 of this patch incorporates Miklos's suggestion to simplify the code, as well as improving consistency of macro names and documentation. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to 'fs/fuse/fuse_i.h')
-rw-r--r--fs/fuse/fuse_i.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h
index fc55dd33c1e2..6aeba864f070 100644
--- a/fs/fuse/fuse_i.h
+++ b/fs/fuse/fuse_i.h
@@ -514,9 +514,12 @@ struct fuse_conn {
/** Use enhanced/automatic page cache invalidation. */
unsigned auto_inval_data:1;
- /** Does the filesystem support readdir-plus? */
+ /** Does the filesystem support readdirplus? */
unsigned do_readdirplus:1;
+ /** Does the filesystem want adaptive readdirplus? */
+ unsigned readdirplus_auto:1;
+
/** The number of requests waiting for completion */
atomic_t num_waiting;