aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
authorPavel Emelyanov <xemul@openvz.org>2013-10-10 09:12:18 -0400
committerMiklos Szeredi <mszeredi@suse.cz>2014-04-02 09:38:50 -0400
commit4d99ff8f12eb20c6cde292f185cb1c8c334ba0ed (patch)
treea0668c9f45b4065ee935c1f653d32a11ae6ef788 /include/uapi
parentea8cd33390fafc1eca06a26e6a9c7bf1d386526f (diff)
fuse: Turn writeback cache on
Introduce a bit kernel and userspace exchange between each-other on the init stage and turn writeback on if the userspace want this and mount option 'allow_wbcache' is present (controlled by fusermount). Also add each writable file into per-inode write list and call the generic_file_aio_write to make use of the Linux page cache engine. Signed-off-by: Maxim Patlasov <MPatlasov@parallels.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/linux/fuse.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/uapi/linux/fuse.h b/include/uapi/linux/fuse.h
index 60bb2f9f7b74..cf4750e1bb49 100644
--- a/include/uapi/linux/fuse.h
+++ b/include/uapi/linux/fuse.h
@@ -93,6 +93,9 @@
93 * 93 *
94 * 7.22 94 * 7.22
95 * - add FUSE_ASYNC_DIO 95 * - add FUSE_ASYNC_DIO
96 *
97 * 7.23
98 * - add FUSE_WRITEBACK_CACHE
96 */ 99 */
97 100
98#ifndef _LINUX_FUSE_H 101#ifndef _LINUX_FUSE_H
@@ -128,7 +131,7 @@
128#define FUSE_KERNEL_VERSION 7 131#define FUSE_KERNEL_VERSION 7
129 132
130/** Minor version number of this interface */ 133/** Minor version number of this interface */
131#define FUSE_KERNEL_MINOR_VERSION 22 134#define FUSE_KERNEL_MINOR_VERSION 23
132 135
133/** The node ID of the root inode */ 136/** The node ID of the root inode */
134#define FUSE_ROOT_ID 1 137#define FUSE_ROOT_ID 1
@@ -219,6 +222,7 @@ struct fuse_file_lock {
219 * FUSE_DO_READDIRPLUS: do READDIRPLUS (READDIR+LOOKUP in one) 222 * FUSE_DO_READDIRPLUS: do READDIRPLUS (READDIR+LOOKUP in one)
220 * FUSE_READDIRPLUS_AUTO: adaptive readdirplus 223 * FUSE_READDIRPLUS_AUTO: adaptive readdirplus
221 * FUSE_ASYNC_DIO: asynchronous direct I/O submission 224 * FUSE_ASYNC_DIO: asynchronous direct I/O submission
225 * FUSE_WRITEBACK_CACHE: use writeback cache for buffered writes
222 */ 226 */
223#define FUSE_ASYNC_READ (1 << 0) 227#define FUSE_ASYNC_READ (1 << 0)
224#define FUSE_POSIX_LOCKS (1 << 1) 228#define FUSE_POSIX_LOCKS (1 << 1)
@@ -236,6 +240,7 @@ struct fuse_file_lock {
236#define FUSE_DO_READDIRPLUS (1 << 13) 240#define FUSE_DO_READDIRPLUS (1 << 13)
237#define FUSE_READDIRPLUS_AUTO (1 << 14) 241#define FUSE_READDIRPLUS_AUTO (1 << 14)
238#define FUSE_ASYNC_DIO (1 << 15) 242#define FUSE_ASYNC_DIO (1 << 15)
243#define FUSE_WRITEBACK_CACHE (1 << 16)
239 244
240/** 245/**
241 * CUSE INIT request/reply flags 246 * CUSE INIT request/reply flags