[PATCH 0/2] fuse: prepare for VFS locking changes.
From: NeilBrown
Date: Mon Sep 28 2026 - 23:43:19 EST
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.
The requires:
1/ the d_alloc_parallel() not be called while i_rwsem is held. fuse
does this when priming the dcache from readdir results. A new
interface d_alloc_trylock() is now available and can be used
instead.
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. Now that d_splice_alias() is able to
splice a hashed alias, create_new_entry() doesn't need to d_drop()
any more
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 fuse
maintainers.
Thanks,
NeilBrown
[PATCH 1/2] fuse: don't d_drop() before d_splice_alias()
[PATCH 2/2] fuse: Use d_alloc_trylock() in fuse_direntplus_link()