Most of that pile is LOOKUP_CACHED series; the rest is a couple of misc cleanups in the general area... There's a minor bisect hazard in the end of series, and normally I would've just folded the fix into the previous commit, but this branch is shared with Jens' tree, with stuff on top of it in there, so that would've required rebases outside of vfs.git. NOTE: I'm less than thrilled by the "let's allow offloading pathwalks to helper threads" push, but LOOKUP_CACHED is useful on its own. The following changes since commit 5c8fe583cce542aa0b84adc939ce85293de36e5e: Linux 5.11-rc1 (2020-12-27 15:30:22 -0800) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.namei for you to fetch changes up to 1bef30105aefa3aaa7fb0de046c35d37ad5201aa: fix handling of nd->depth on LOOKUP_CACHED failures in try_to_unlazy* (2021-02-15 12:11:40 -0500) ---------------------------------------------------------------- Al Viro (3): do_tmpfile(): don't mess with finish_open() saner calling conventions for unlazy_child() fix handling of nd->depth on LOOKUP_CACHED failures in try_to_unlazy* Jens Axboe (3): fs: make unlazy_walk() error handling consistent fs: add support for LOOKUP_CACHED fs: expose LOOKUP_CACHED through openat2() RESOLVE_CACHED Steven Rostedt (VMware) (1): fs/namei.c: Remove unlikely of status being -ECHILD in lookup_fast() fs/namei.c | 88 ++++++++++++++++++++++---------------------- fs/open.c | 6 +++ include/linux/fcntl.h | 2 +- include/linux/namei.h | 1 + include/uapi/linux/openat2.h | 4 ++ 5 files changed, 55 insertions(+), 46 deletions(-)