[git pull] vfs.git pile 1 - namei stuff

From: Al Viro
Date: Mon Aug 01 2022 - 16:17:21 EST


The following changes since commit b13baccc3850ca8b8cccbf8ed9912dbaa0fdf7f3:

Linux 5.19-rc2 (2022-06-12 16:11:37 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-work.namei

for you to fetch changes up to 3bd8bc897161730042051cd5f9c6ed1e94cb5453:

step_into(): move fetching ->d_inode past handle_mounts() (2022-07-06 13:16:07 -0400)

----------------------------------------------------------------
RCU pathwalk cleanups. Storing sampled ->d_seq of
the next dentry in nameidata simplifies life considerably,
especially if we delay fetching ->d_inode until step_into().

Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

----------------------------------------------------------------
Al Viro (10):
__follow_mount_rcu(): verify that mount_lock remains unchanged
namei: get rid of pointless unlikely(read_seqcount_retry(...))
follow_dotdot{,_rcu}(): change calling conventions
switch try_to_unlazy_next() to __legitimize_mnt()
namei: move clearing LOOKUP_RCU towards rcu_read_unlock()
namei: stash the sampled ->d_seq into nameidata
step_into(): lose inode argument
follow_dotdot{,_rcu}(): don't bother with inode
lookup_fast(): don't bother with inode
step_into(): move fetching ->d_inode past handle_mounts()

fs/mount.h | 1 -
fs/namei.c | 191 +++++++++++++++++++++++++--------------------------------
fs/namespace.c | 2 +-
3 files changed, 86 insertions(+), 108 deletions(-)