aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2003-09-08 11:14:11 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2003-09-08 11:14:11 +0000
commitda4e486a8ec9ad172eb7834a973a14004170ec14 (patch)
treea32078a31cf55bf9dac48a0e4694ff6993aa4495 /include/linux
parent868f16fa2462d744127803dcb57fa8cfcbe1584d (diff)
downloadlibfuse-da4e486a8ec9ad172eb7834a973a14004170ec14.tar.gz
caching patch by Michael Grigoriev
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/fuse.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/include/linux/fuse.h b/include/linux/fuse.h
index eef77d9..507d872 100644
--- a/include/linux/fuse.h
+++ b/include/linux/fuse.h
@@ -46,6 +46,10 @@ permission checking is done in the kernel */
doing the mount will be allowed to access the filesystem */
#define FUSE_ALLOW_OTHER (1 << 1)
+/** If the FUSE_KERNEL_CACHE flag is given, then files will be cached
+ until the INVALIDATE operation is invoked */
+#define FUSE_KERNEL_CACHE (1 << 2)
+
struct fuse_attr {
unsigned int mode;
unsigned int nlink;
@@ -77,7 +81,7 @@ struct fuse_kstatfs {
enum fuse_opcode {
FUSE_LOOKUP = 1,
- FUSE_FORGET = 2,
+ FUSE_FORGET = 2, /* no reply */
FUSE_GETATTR = 3,
FUSE_SETATTR = 4,
FUSE_READLINK = 5,
@@ -93,7 +97,8 @@ enum fuse_opcode {
FUSE_READ = 15,
FUSE_WRITE = 16,
FUSE_STATFS = 17,
- FUSE_RELEASE = 18
+ FUSE_RELEASE = 18, /* no reply */
+ FUSE_INVALIDATE = 19 /* user initiated */
};
/* Conservative buffer size for the client */
@@ -179,6 +184,12 @@ struct fuse_out_header {
int error;
};
+struct fuse_user_header {
+ int unique; /* zero */
+ enum fuse_opcode opcode;
+ unsigned long ino;
+};
+
struct fuse_dirent {
unsigned long ino;
unsigned short namelen;