summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Layton <jlayton@kernel.org>2026-01-08 20:13:08 +0300
committerChristian Brauner <brauner@kernel.org>2026-01-12 12:55:46 +0300
commitf46bb13dc5d94471507ff9aed7a62a04d406b8b8 (patch)
treec86690498bfe30c6729eb5c98108c6f305d35645
parent7dd596bb35e579916576677b51c15171012a7854 (diff)
downloadlinux-f46bb13dc5d94471507ff9aed7a62a04d406b8b8.tar.xz
nilfs2: add setlease file operation
Add the setlease file_operation to nilfs_file_operations and nilfs_dir_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-13-ea4dec9b67fa@kernel.org Acked-by: Ryusuke Konishi <konishi.ryusuke@gmail.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/nilfs2/dir.c3
-rw-r--r--fs/nilfs2/file.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/fs/nilfs2/dir.c b/fs/nilfs2/dir.c
index 6ca3d74be1e1..b243199036df 100644
--- a/fs/nilfs2/dir.c
+++ b/fs/nilfs2/dir.c
@@ -30,6 +30,7 @@
*/
#include <linux/pagemap.h>
+#include <linux/filelock.h>
#include "nilfs.h"
#include "page.h"
@@ -661,5 +662,5 @@ const struct file_operations nilfs_dir_operations = {
.compat_ioctl = nilfs_compat_ioctl,
#endif /* CONFIG_COMPAT */
.fsync = nilfs_sync_file,
-
+ .setlease = generic_setlease,
};
diff --git a/fs/nilfs2/file.c b/fs/nilfs2/file.c
index 1b8d754db44d..f93b68c4877c 100644
--- a/fs/nilfs2/file.c
+++ b/fs/nilfs2/file.c
@@ -8,6 +8,7 @@
*/
#include <linux/fs.h>
+#include <linux/filelock.h>
#include <linux/mm.h>
#include <linux/writeback.h>
#include "nilfs.h"
@@ -150,6 +151,7 @@ const struct file_operations nilfs_file_operations = {
.fsync = nilfs_sync_file,
.splice_read = filemap_splice_read,
.splice_write = iter_file_splice_write,
+ .setlease = generic_setlease,
};
const struct inode_operations nilfs_file_inode_operations = {