diff options
| author | Jeff Layton <jlayton@kernel.org> | 2026-01-08 20:12:58 +0300 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-01-12 12:55:45 +0300 |
| commit | f9688474e413f607f1a4e047d970b50dc268c84c (patch) | |
| tree | 50cd6ab477697464a77d41891524014ae21b10b0 | |
| parent | 663cdef61a27bf593e48cedc37f28ed5cfbf8c11 (diff) | |
| download | linux-f9688474e413f607f1a4e047d970b50dc268c84c.tar.xz | |
btrfs: add setlease file operation
Add the setlease file_operation to btrfs_file_operations and
btrfs_dir_file_operations, pointing to generic_setlease. A future
patch will change the default behavior to reject lease attempts with
-EINVAL when there is no setlease file operation defined. Add
generic_setlease to retain the ability to set leases on this
filesystem.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Link: https://patch.msgid.link/20260108-setlease-6-20-v1-3-ea4dec9b67fa@kernel.org
Acked-by: David Sterba <dsterba@suse.com>
Acked-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Christian Brauner <brauner@kernel.org>
| -rw-r--r-- | fs/btrfs/file.c | 2 | ||||
| -rw-r--r-- | fs/btrfs/inode.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/fs/btrfs/file.c b/fs/btrfs/file.c index 1abc7ed2990e..aca2b541e72d 100644 --- a/fs/btrfs/file.c +++ b/fs/btrfs/file.c @@ -10,6 +10,7 @@ #include <linux/string.h> #include <linux/backing-dev.h> #include <linux/falloc.h> +#include <linux/filelock.h> #include <linux/writeback.h> #include <linux/compat.h> #include <linux/slab.h> @@ -3867,6 +3868,7 @@ const struct file_operations btrfs_file_operations = { .remap_file_range = btrfs_remap_file_range, .uring_cmd = btrfs_uring_cmd, .fop_flags = FOP_BUFFER_RASYNC | FOP_BUFFER_WASYNC, + .setlease = generic_setlease, }; int btrfs_fdatawrite_range(struct btrfs_inode *inode, loff_t start, loff_t end) diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index d2b302ac6af9..d377794b4c9f 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -8,6 +8,7 @@ #include <linux/bio.h> #include <linux/blk-cgroup.h> #include <linux/file.h> +#include <linux/filelock.h> #include <linux/fs.h> #include <linux/fs_struct.h> #include <linux/pagemap.h> @@ -10596,6 +10597,7 @@ static const struct file_operations btrfs_dir_file_operations = { #endif .release = btrfs_release_file, .fsync = btrfs_sync_file, + .setlease = generic_setlease, }; /* |
