linux/fs/fuse
Linus Torvalds e8a56d6fc8 dentry memory safety stuff
* d_alloc_parallel() API change (Neil's with my changes).
  * NORCU fixes.
  * Reorganization and simplification of dentry eviction logics.
  * Simplifying rcu_read_lock() scopes in fs/dcache.c.
  * Secondary roots work - getting rid of NFS fake root dentries and
  dealing with remaining shrink_dcache_for_umount()/shrink_dentry_list()
  races.
  * making cursors NORCU (surprisingly easy)
 
 Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQqUNBr3gm4hGXdBJlZ7Krx/gZQ6wUCai8ppAAKCRBZ7Krx/gZQ
 67xXAP48lSBS6WyiTztk/ZD/0WFO+EemnxEDXZ0s55ejQ1/uswEApWNMaxBYkzxB
 0lgAjKPojjtqYovttP/AHklomSLzMA4=
 =llw0
 -----END PGP SIGNATURE-----

Merge tag 'pull-dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull dcache updates from Al Viro:

 - d_alloc_parallel() API change (Neil's with my changes)

 - NORCU fixes

 - Reorganization and simplification of dentry eviction logic

 - Simplifying rcu_read_lock() scopes in fs/dcache.c

 - Secondary roots work - getting rid of NFS fake root dentries and
   dealing with remaining shrink_dcache_for_umount() and
   shrink_dentry_list() races

 - making cursors NORCU (surprisingly easy)

* tag 'pull-dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (22 commits)
  make cursors NORCU
  nfs: get rid of fake root dentries
  wind ->s_roots via ->d_sib instead of ->d_hash
  shrink_dentry_tree(): unify the calls of shrink_dentry_list()
  shrinking rcu_read_lock() scope in d_alloc_parallel()
  d_walk(): shrink rcu_read_lock() scope
  document dentry_kill()
  adjust calling conventions of lock_for_kill(), fold __dentry_kill() into dentry_kill()
  Document rcu_read_lock() use in select_collect2()
  Shift rcu_read_{,un}lock() inside fast_dput()
  simplify safety for lock_for_kill() slowpath
  fold lock_for_kill() and __dentry_kill() into common helper
  fold lock_for_kill() into shrink_kill()
  shrink_dentry_list(): start with removing from shrink list
  d_prune_aliases(): make sure to skip NORCU aliases
  kill d_dispose_if_unused()
  make to_shrink_list() return whether it has moved dentry to list
  select_collect(): ignore dentries on shrink lists if they have positive refcounts
  find_acceptable_alias(): skip NORCU aliases with zero refcount
  fix a race between d_find_any_alias() and final dput() of NORCU dentries
  ...
History 2026-06-15 04:15:31 +05:30
..
acl.c posix_acl: make posix_acl_to_xattr() alloc the buffer 2026-01-16 10:51:12 +01:00
backing.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
control.c fuse: quiet down complaints in fuse_conn_limit_write 2026-03-03 10:05:39 +01:00
cuse.c fuse: add refcount to fuse_dev 2026-04-02 20:43:24 +02:00
dax.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dev.c fuse: reject fuse_notify() pagecache ops on directories 2026-05-22 15:19:26 +02:00
dev_uring.c fuse: refactor duplicate queue teardown operation 2026-02-27 15:16:34 +01:00
dev_uring_i.h fuse: add kernel-enforced timeout option for requests 2025-03-31 14:59:25 +02:00
dir.c kill d_dispose_if_unused() 2026-06-05 00:34:55 -04:00
file.c fuse: fix writeback array overflow when max_pages is one 2026-05-11 14:19:01 +02:00
fuse_dev_i.h fuse: add refcount to fuse_dev 2026-04-02 20:43:24 +02:00
fuse_i.h fuse: clean up device cloning 2026-04-02 20:52:59 +02:00
fuse_trace.h fuse: add simple request tracepoints 2024-08-29 11:43:13 +02:00
inode.c fuse update for 7.1 2026-04-15 19:04:21 -07:00
ioctl.c fuse: replace __get_free_page() with kmalloc() 2026-05-27 15:12:24 +02:00
iomode.c fuse: remove unused 'inode' parameter in fuse_passthrough_open 2025-08-27 14:29:44 +02:00
Kconfig fuse: fix references to fuse.rst -> fuse/fuse.rst 2025-09-02 11:14:15 +02:00
Makefile fuse: move CREATE_TRACE_POINTS to a separate file 2025-09-25 16:22:18 +02:00
passthrough.c lsm: add backing_file LSM hooks 2026-04-03 16:53:50 -04:00
readdir.c VFS: use wait_var_event for waiting in d_alloc_parallel() 2026-06-05 00:34:54 -04:00
sysctl.c fuse: add default_request_timeout and max_request_timeout sysctls 2025-03-31 14:59:27 +02:00
trace.c fuse: move CREATE_TRACE_POINTS to a separate file 2025-09-25 16:22:18 +02:00
virtio_fs.c fuse: add refcount to fuse_dev 2026-04-02 20:43:24 +02:00
xattr.c fuse: make args->in_args[0] to be always the header 2025-01-24 11:54:02 +01:00