Pull fuse updates from Miklos Szeredi: "Scalability and performance improvements, as well as minor bug fixes and cleanups" * tag 'fuse-update-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: (25 commits) fuse: cache readdir calls if filesystem opts out of opendir fuse: support clients that don't implement 'opendir' fuse: lift bad inode checks into callers fuse: multiplex cached/direct_io file operations fuse add copy_file_range to direct io fops fuse: use iov_iter based generic splice helpers fuse: Switch to using async direct IO for FOPEN_DIRECT_IO fuse: use atomic64_t for khctr fuse: clean up aborted fuse: Protect ff->reserved_req via corresponding fi->lock fuse: Protect fi->nlookup with fi->lock fuse: Introduce fi->lock to protect write related fields fuse: Convert fc->attr_version into atomic64_t fuse: Add fuse_inode argument to fuse_prepare_release() fuse: Verify userspace asks to requeue interrupt that we really sent fuse: Do some refactoring in fuse_dev_do_write() fuse: Wake up req->waitq of only if not background fuse: Optimize request_end() by not taking fiq->waitq.lock fuse: Kill fasync only if interrupt is queued in queue_interrupt() fuse: Remove stale comment in end_requests() ...
Showing the changes to include/uapi/linux (1 of 9 files). Show all
Unified · Split
| @@ -122,6 +122,9 @@ · 121 unmodified lines | |||
| 122 | * - add FOPEN_CACHE_DIR | 122 | * - add FOPEN_CACHE_DIR |
| 123 | * - add FUSE_MAX_PAGES, add max_pages to init_out | 123 | * - add FUSE_MAX_PAGES, add max_pages to init_out |
| 124 | * - add FUSE_CACHE_SYMLINKS | 124 | * - add FUSE_CACHE_SYMLINKS |
| 125 | * | ||
| 126 | * 7.29 | ||
| 127 | * - add FUSE_NO_OPENDIR_SUPPORT flag | ||
| 125 | */ | 128 | */ |
| 126 | 129 | ||
| 127 | #ifndef _LINUX_FUSE_H | 130 | #ifndef _LINUX_FUSE_H |
| @@ -157,7 +160,7 @@ · 29 unmodified lines | |||
| 157 | #define FUSE_KERNEL_VERSION 7 | 160 | #define FUSE_KERNEL_VERSION 7 |
| 158 | 161 | ||
| 159 | /** Minor version number of this interface */ | 162 | /** Minor version number of this interface */ |
| 160 | #define FUSE_KERNEL_MINOR_VERSION 28 | 163 | #define FUSE_KERNEL_MINOR_VERSION 29 |
| 161 | 164 | ||
| 162 | /** The node ID of the root inode */ | 165 | /** The node ID of the root inode */ |
| 163 | #define FUSE_ROOT_ID 1 | 166 | #define FUSE_ROOT_ID 1 |
| @@ -259,6 +262,7 @@ struct fuse_file_lock { · 95 unmodified lines | |||
| 259 | * FUSE_ABORT_ERROR: reading the device after abort returns ECONNABORTED | 262 | * FUSE_ABORT_ERROR: reading the device after abort returns ECONNABORTED |
| 260 | * FUSE_MAX_PAGES: init_out.max_pages contains the max number of req pages | 263 | * FUSE_MAX_PAGES: init_out.max_pages contains the max number of req pages |
| 261 | * FUSE_CACHE_SYMLINKS: cache READLINK responses | 264 | * FUSE_CACHE_SYMLINKS: cache READLINK responses |
| 265 | * FUSE_NO_OPENDIR_SUPPORT: kernel supports zero-message opendir | ||
| 262 | */ | 266 | */ |
| 263 | #define FUSE_ASYNC_READ (1 << 0) | 267 | #define FUSE_ASYNC_READ (1 << 0) |
| 264 | #define FUSE_POSIX_LOCKS (1 << 1) | 268 | #define FUSE_POSIX_LOCKS (1 << 1) |
| @@ -284,6 +288,7 @@ struct fuse_file_lock { · 19 unmodified lines | |||
| 284 | #define FUSE_ABORT_ERROR (1 << 21) | 288 | #define FUSE_ABORT_ERROR (1 << 21) |
| 285 | #define FUSE_MAX_PAGES (1 << 22) | 289 | #define FUSE_MAX_PAGES (1 << 22) |
| 286 | #define FUSE_CACHE_SYMLINKS (1 << 23) | 290 | #define FUSE_CACHE_SYMLINKS (1 << 23) |
| 291 | #define FUSE_NO_OPENDIR_SUPPORT (1 << 24) | ||
| 287 | 292 | ||
| 288 | /** | 293 | /** |
| 289 | * CUSE INIT request/reply flags | 294 | * CUSE INIT request/reply flags |