[PATCH 0/6] vfs: properly deny directory leases on filesystems with special lease handling
Jeff Layton <[email protected]>
| Newsgroups | dev.linux.lists.gfs2,dev.linux.lists.v9fs,org.kernel.vger.ceph-devel,org.kernel.vger.linux-cifs,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-nfs |
|---|---|
| Message-ID | <[email protected]> |
Filesystems currently have to set the ->setlease() method explicitly in order to deny attempts to set a lease or delegation. With the advent of directory delegations, we now need to set ->setlease on the directory file_operations for several filesystems to simple_nosetlease() to ensure this. This patchset does that. There should be no noticeable change in behavior, other than fixing the support detection in xfstests, allowing lease/delegation tests to be properly skipped on these filesystems. It's probably simplest to merge these all at once via Christian's tree if he's amenable, but Acks would be welcome. Ideally these would go in for v6.19. Long term, I think it would be best to change leases/delegations to be an opt-in thing, such that leases are always denied by default if the method isn't set. That's a larger patchset though as we'd need to audit all of the file_operations that currently have ->setlease() as NULL. Signed-off-by: Jeff Layton <[email protected]> --- Jeff Layton (6): nfs: properly disallow delegation requests on directories smb/client: properly disallow delegations on directories 9p: don't allow delegations to be set on directories gfs2: don't allow delegations to be set on directories ceph: don't allow delegations to be set on directories vboxsf: don't allow delegations to be set on directories fs/9p/vfs_dir.c | 2 ++ fs/ceph/dir.c | 2 ++ fs/gfs2/file.c | 1 + fs/nfs/dir.c | 1 + fs/nfs/nfs4file.c | 2 -- fs/smb/client/cifsfs.c | 4 +--- fs/vboxsf/dir.c | 1 + 7 files changed, 8 insertions(+), 5 deletions(-) --- base-commit: 7f98ab9da046865d57c102fd3ca9669a29845f67 change-id: 20260107-setlease-6-19-3ab7a5d30c51 Best regards, -- Jeff Layton <[email protected]>