Re: [PATCH v2 00/11] vfs: recall-only directory delegations for knfsd

From: NeilBrown

Date: Fri Oct 17 2025 - 19:45:00 EST


On Fri, 17 Oct 2025, Jeff Layton wrote:
> 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@xxxxxxxxxx/
>
> Signed-off-by: Jeff Layton <jlayton@xxxxxxxxxx>
> ---
> 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@xxxxxxxxxx
>
> ---
> 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

vfs_symlink() is missing from the updated APIs. Surely that needs to be
able to wait for a delegation to break.

vfs_mkobj() maybe does too, but I could easily turn a blind eye to that.

I haven't looked properly at the last patch but all the other could have
Reviewed-by: NeilBrown <neil@xxxxxxxxxx>

once the vfs_symlink() omission is fixed.

NeilBrown