linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/11] vfs: recall-only directory delegations for knfsd
@ 2025-10-17 11:31 Jeff Layton
  2025-10-17 11:31 ` [PATCH v2 01/11] filelock: push the S_ISREG check down to ->setlease handlers Jeff Layton
                   ` (12 more replies)
  0 siblings, 13 replies; 20+ messages in thread
From: Jeff Layton @ 2025-10-17 11:31 UTC (permalink / raw)
  To: Miklos Szeredi, Alexander Viro, Christian Brauner, Jan Kara,
	Chuck Lever, Alexander Aring, Trond Myklebust, Anna Schumaker,
	Steve French, Paulo Alcantara, Ronnie Sahlberg, Shyam Prasad N,
	Tom Talpey, Bharath SM, Greg Kroah-Hartman, Rafael J. Wysocki,
	Danilo Krummrich, David Howells, Tyler Hicks, NeilBrown,
	Olga Kornievskaia, Dai Ngo, Amir Goldstein, Namjae Jeon,
	Steve French, Sergey Senozhatsky, Carlos Maiolino,
	Kuniyuki Iwashima, David S. Miller, Eric Dumazet, Jakub Kicinski,
	Paolo Abeni, Simon Horman
  Cc: linux-fsdevel, linux-kernel, linux-nfs, linux-cifs,
	samba-technical, netfs, ecryptfs, linux-unionfs, linux-xfs,
	netdev, Jeff Layton

A smaller variation of the v1 patchset that I posted earlier this week.
Neil's review inspired me to get rid of the lm_may_setlease operation
and to do the conflict resolution internally inside of nfsd. That means
a smaller VFS-layer change, and an overall reduction in code.

This patchset adds support for directory delegations to nfsd. This
version only supports recallable delegations. There is no CB_NOTIFY
support yet. I have patches for those, but we've decided to add that
support in a later kernel once we get some experience with this part.
Anna is working on the client-side pieces.

It would be great if we could get into linux-next soon so that it can be
merged for v6.19. Christian, could you pick up the vfs/filelock patches,
and Chuck pick up the nfsd patches?

Thanks!
Jeff

[1]: https://lore.kernel.org/all/20240315-dir-deleg-v1-0-a1d6209a3654@kernel.org/

Signed-off-by: Jeff Layton <jlayton@kernel.org>
---
Changes in v2:
- handle lease conflict resolution inside of nfsd
- drop the lm_may_setlease lock_manager operation
- just add extra argument to vfs_create() instead of creating wrapper
- don't allocate fsnotify_mark for open directories
- Link to v1: https://lore.kernel.org/r/20251013-dir-deleg-ro-v1-0-406780a70e5e@kernel.org

---
Jeff Layton (11):
      filelock: push the S_ISREG check down to ->setlease handlers
      vfs: add try_break_deleg calls for parents to vfs_{link,rename,unlink}
      vfs: allow mkdir to wait for delegation break on parent
      vfs: allow rmdir to wait for delegation break on parent
      vfs: break parent dir delegations in open(..., O_CREAT) codepath
      vfs: make vfs_create break delegations on parent directory
      vfs: make vfs_mknod break delegations on parent directory
      filelock: lift the ban on directory leases in generic_setlease
      nfsd: allow filecache to hold S_IFDIR files
      nfsd: allow DELEGRETURN on directories
      nfsd: wire up GET_DIR_DELEGATION handling

 drivers/base/devtmpfs.c  |   6 +--
 fs/cachefiles/namei.c    |   2 +-
 fs/ecryptfs/inode.c      |   8 +--
 fs/fuse/dir.c            |   1 +
 fs/init.c                |   4 +-
 fs/locks.c               |  12 +++--
 fs/namei.c               | 134 ++++++++++++++++++++++++++++++++++++-----------
 fs/nfs/nfs4file.c        |   2 +
 fs/nfsd/filecache.c      |  57 +++++++++++++++-----
 fs/nfsd/filecache.h      |   2 +
 fs/nfsd/nfs3proc.c       |   2 +-
 fs/nfsd/nfs4proc.c       |  21 +++++++-
 fs/nfsd/nfs4recover.c    |   6 +--
 fs/nfsd/nfs4state.c      | 103 +++++++++++++++++++++++++++++++++++-
 fs/nfsd/state.h          |   5 ++
 fs/nfsd/vfs.c            |  14 ++---
 fs/nfsd/vfs.h            |   2 +-
 fs/open.c                |   2 +-
 fs/overlayfs/overlayfs.h |   8 +--
 fs/smb/client/cifsfs.c   |   3 ++
 fs/smb/server/vfs.c      |   8 +--
 fs/xfs/scrub/orphanage.c |   2 +-
 include/linux/fs.h       |  11 ++--
 net/unix/af_unix.c       |   2 +-
 24 files changed, 329 insertions(+), 88 deletions(-)
---
base-commit: 2c40814eb5ae104d3f898fd8b705ecad114105b5
change-id: 20251013-dir-deleg-ro-d0fe19823b21

Best regards,
-- 
Jeff Layton <jlayton@kernel.org>


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2025-10-21 13:09 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-17 11:31 [PATCH v2 00/11] vfs: recall-only directory delegations for knfsd Jeff Layton
2025-10-17 11:31 ` [PATCH v2 01/11] filelock: push the S_ISREG check down to ->setlease handlers Jeff Layton
2025-10-17 11:31 ` [PATCH v2 02/11] vfs: add try_break_deleg calls for parents to vfs_{link,rename,unlink} Jeff Layton
2025-10-17 11:31 ` [PATCH v2 03/11] vfs: allow mkdir to wait for delegation break on parent Jeff Layton
2025-10-17 11:31 ` [PATCH v2 04/11] vfs: allow rmdir " Jeff Layton
2025-10-17 11:31 ` [PATCH v2 05/11] vfs: break parent dir delegations in open(..., O_CREAT) codepath Jeff Layton
2025-10-17 11:31 ` [PATCH v2 06/11] vfs: make vfs_create break delegations on parent directory Jeff Layton
2025-10-17 11:31 ` [PATCH v2 07/11] vfs: make vfs_mknod " Jeff Layton
2025-10-17 11:32 ` [PATCH v2 08/11] filelock: lift the ban on directory leases in generic_setlease Jeff Layton
2025-10-17 11:32 ` [PATCH v2 09/11] nfsd: allow filecache to hold S_IFDIR files Jeff Layton
2025-10-18 19:33   ` Chuck Lever
2025-10-19 13:41     ` Jeff Layton
2025-10-17 11:32 ` [PATCH v2 10/11] nfsd: allow DELEGRETURN on directories Jeff Layton
2025-10-18 19:37   ` Chuck Lever
2025-10-17 11:32 ` [PATCH v2 11/11] nfsd: wire up GET_DIR_DELEGATION handling Jeff Layton
2025-10-18 19:46   ` Chuck Lever
2025-10-19 13:46     ` Jeff Layton
2025-10-17 23:44 ` [PATCH v2 00/11] vfs: recall-only directory delegations for knfsd NeilBrown
2025-10-19 14:17   ` Jeff Layton
2025-10-21 13:09 ` Christian Brauner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).