diff options
Diffstat (limited to 'include/linux/fuse.h')
| -rw-r--r-- | include/linux/fuse.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/include/linux/fuse.h b/include/linux/fuse.h index c3c578e09833..d464de53db43 100644 --- a/include/linux/fuse.h +++ b/include/linux/fuse.h | |||
| @@ -41,6 +41,12 @@ | |||
| 41 | * 7.15 | 41 | * 7.15 |
| 42 | * - add store notify | 42 | * - add store notify |
| 43 | * - add retrieve notify | 43 | * - add retrieve notify |
| 44 | * | ||
| 45 | * 7.16 | ||
| 46 | * - add BATCH_FORGET request | ||
| 47 | * - FUSE_IOCTL_UNRESTRICTED shall now return with array of 'struct | ||
| 48 | * fuse_ioctl_iovec' instead of ambiguous 'struct iovec' | ||
| 49 | * - add FUSE_IOCTL_32BIT flag | ||
| 44 | */ | 50 | */ |
| 45 | 51 | ||
| 46 | #ifndef _LINUX_FUSE_H | 52 | #ifndef _LINUX_FUSE_H |
| @@ -72,7 +78,7 @@ | |||
| 72 | #define FUSE_KERNEL_VERSION 7 | 78 | #define FUSE_KERNEL_VERSION 7 |
| 73 | 79 | ||
| 74 | /** Minor version number of this interface */ | 80 | /** Minor version number of this interface */ |
| 75 | #define FUSE_KERNEL_MINOR_VERSION 15 | 81 | #define FUSE_KERNEL_MINOR_VERSION 16 |
| 76 | 82 | ||
| 77 | /** The node ID of the root inode */ | 83 | /** The node ID of the root inode */ |
| 78 | #define FUSE_ROOT_ID 1 | 84 | #define FUSE_ROOT_ID 1 |
| @@ -200,12 +206,14 @@ struct fuse_file_lock { | |||
| 200 | * FUSE_IOCTL_COMPAT: 32bit compat ioctl on 64bit machine | 206 | * FUSE_IOCTL_COMPAT: 32bit compat ioctl on 64bit machine |
| 201 | * FUSE_IOCTL_UNRESTRICTED: not restricted to well-formed ioctls, retry allowed | 207 | * FUSE_IOCTL_UNRESTRICTED: not restricted to well-formed ioctls, retry allowed |
| 202 | * FUSE_IOCTL_RETRY: retry with new iovecs | 208 | * FUSE_IOCTL_RETRY: retry with new iovecs |
| 209 | * FUSE_IOCTL_32BIT: 32bit ioctl | ||
| 203 | * | 210 | * |
| 204 | * FUSE_IOCTL_MAX_IOV: maximum of in_iovecs + out_iovecs | 211 | * FUSE_IOCTL_MAX_IOV: maximum of in_iovecs + out_iovecs |
| 205 | */ | 212 | */ |
| 206 | #define FUSE_IOCTL_COMPAT (1 << 0) | 213 | #define FUSE_IOCTL_COMPAT (1 << 0) |
| 207 | #define FUSE_IOCTL_UNRESTRICTED (1 << 1) | 214 | #define FUSE_IOCTL_UNRESTRICTED (1 << 1) |
| 208 | #define FUSE_IOCTL_RETRY (1 << 2) | 215 | #define FUSE_IOCTL_RETRY (1 << 2) |
| 216 | #define FUSE_IOCTL_32BIT (1 << 3) | ||
| 209 | 217 | ||
| 210 | #define FUSE_IOCTL_MAX_IOV 256 | 218 | #define FUSE_IOCTL_MAX_IOV 256 |
| 211 | 219 | ||
| @@ -256,6 +264,7 @@ enum fuse_opcode { | |||
| 256 | FUSE_IOCTL = 39, | 264 | FUSE_IOCTL = 39, |
| 257 | FUSE_POLL = 40, | 265 | FUSE_POLL = 40, |
| 258 | FUSE_NOTIFY_REPLY = 41, | 266 | FUSE_NOTIFY_REPLY = 41, |
| 267 | FUSE_BATCH_FORGET = 42, | ||
| 259 | 268 | ||
| 260 | /* CUSE specific operations */ | 269 | /* CUSE specific operations */ |
| 261 | CUSE_INIT = 4096, | 270 | CUSE_INIT = 4096, |
| @@ -290,6 +299,16 @@ struct fuse_forget_in { | |||
| 290 | __u64 nlookup; | 299 | __u64 nlookup; |
| 291 | }; | 300 | }; |
| 292 | 301 | ||
| 302 | struct fuse_forget_one { | ||
| 303 | __u64 nodeid; | ||
| 304 | __u64 nlookup; | ||
| 305 | }; | ||
| 306 | |||
| 307 | struct fuse_batch_forget_in { | ||
| 308 | __u32 count; | ||
| 309 | __u32 dummy; | ||
| 310 | }; | ||
| 311 | |||
| 293 | struct fuse_getattr_in { | 312 | struct fuse_getattr_in { |
| 294 | __u32 getattr_flags; | 313 | __u32 getattr_flags; |
| 295 | __u32 dummy; | 314 | __u32 dummy; |
| @@ -510,6 +529,11 @@ struct fuse_ioctl_in { | |||
| 510 | __u32 out_size; | 529 | __u32 out_size; |
| 511 | }; | 530 | }; |
| 512 | 531 | ||
| 532 | struct fuse_ioctl_iovec { | ||
| 533 | __u64 base; | ||
| 534 | __u64 len; | ||
| 535 | }; | ||
| 536 | |||
| 513 | struct fuse_ioctl_out { | 537 | struct fuse_ioctl_out { |
| 514 | __s32 result; | 538 | __s32 result; |
| 515 | __u32 flags; | 539 | __u32 flags; |
