mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/7] multiple-filesystems: prepare for changes to VFS locking
@ 2026-09-29  3:36 NeilBrown
  2026-09-29  3:36 ` [PATCH 1/7] VFS/xfs/ntfs: drop parent lock across d_alloc_parallel() in d_add_ci() NeilBrown
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: NeilBrown @ 2026-09-29  3:36 UTC (permalink / raw)
  To: Miklos Szeredi, Amir Goldstein, Kees Cook, Joel Granados,
	Richard Weinberger, Anton Ivanov, Johannes Berg, Breno Leitao,
	Andreas Hindborg, Jan Harkes, Hugh Dickins, Baolin Wang,
	Namjae Jeon, Hyunchul Lee, Carlos Maiolino, Alexander Viro,
	Christian Brauner
  Cc: Jeff Layton, Jan Kara, linux-fsdevel, fuse-devel, linux-kernel,
	linux-unionfs, linux-um, codalist, coda, linux-mm, ntfs,
	linux-xfs

I am working on changes to directory locking.  The medium term goal is
to lift d_alloc_parallel() locking above i_rwsem, so d_alloc_paralle()
can be run unlocked, and consequently cannot be called when ->i_rwsem is
held.

This patch set makes small changes to a number of filesystems which each
require just one patch.  Patch series for nfs, afs, cifs, fuse, cephfs
have been posted separately

The maint requirements are:
 1/ that d_alloc_parallel() not be called while i_rwsem is held.
    Places which currently do this can be changed to use d_alloc_trylock(),
    or d_duplicate(), or change to drop and retake the parent lock.


 2/ a dentry must not be d_drop()ed while an operation is ongoing, as an
    unlocked d_alloc_parallel() would then be able to create a new
    dentry with the same name.  d_splice_alias() can now work with a
    hash dentry, so often the d_drop() can simply be dropped.  Other
    tims it can be moved to after the operation has completed.

Though not strictly a requirement, the recent change to d_splice_alias()
means that there is nothing that d_add() which d_splice_alias() can do,
so it makes sense to deprecate d_add().  So d_add() calls have been changed
to d_splice_alias() in a few places.


The patches depend on patches recently added to the vfs tree.  I would
prefer these land in that tree too with an Acked-by or similar from
relevant maintainers.

Thanks,
NeilBrown


 [PATCH 1/7] VFS/xfs/ntfs: drop parent lock across d_alloc_parallel()
 [PATCH 2/7] shmem: use d_duplicate()
 [PATCH 3/7] coda: don't d_drop() early.
 [PATCH 4/7] configfs: remove d_add() calls before
 [PATCH 5/7] hostfs: don't d_drop() before d_splice_alias() in
 [PATCH 6/7] procfs: drop parent lock for d_alloc_parallel() in
 [PATCH 7/7] ovl: stop using lookup_one() in ovl_iterate().

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

end of thread, other threads:[~2026-09-30 13:36 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-29  3:36 [PATCH 0/7] multiple-filesystems: prepare for changes to VFS locking NeilBrown
2026-09-29  3:36 ` [PATCH 1/7] VFS/xfs/ntfs: drop parent lock across d_alloc_parallel() in d_add_ci() NeilBrown
2026-09-29  3:36 ` [PATCH 2/7] shmem: use d_duplicate() NeilBrown
2026-09-29  3:36 ` [PATCH 3/7] coda: don't d_drop() early NeilBrown
2026-09-29  3:36 ` [PATCH 4/7] configfs: remove d_add() calls before configfs_attach_group() NeilBrown
2026-09-29  5:07   ` Al Viro
2026-09-29  3:36 ` [PATCH 5/7] hostfs: don't d_drop() before d_splice_alias() in hostfs_mkdir() NeilBrown
2026-09-29  3:36 ` [PATCH 6/7] procfs: drop parent lock for d_alloc_parallel() in iterate_shared() NeilBrown
2026-09-29  3:36 ` [PATCH 7/7] ovl: stop using lookup_one() in ovl_iterate() NeilBrown
2026-09-30 13:35   ` Amir Goldstein
2026-09-30 10:22 ` [syzbot ci] Re: multiple-filesystems: prepare for changes to VFS locking syzbot ci

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®