On Sun, Aug 17, 2025 at 05:15:09PM +0000, Askar Safin wrote: > openat2 had a bug: if we pass RESOLVE_NO_XDEV, then openat2 > doesn't traverse through automounts, but may still trigger them. > See this link for full bug report with reproducer: > https://lore.kernel.org/linux-fsdevel/20250817075252.4137628-1-safinaskar@xxxxxxxxxxxx/ > > This patchset fixes the bug. Thanks, this looks all sane. Once you've addressed all comments I'll get this into -next. > RESOLVE_NO_XDEV logic hopefully becomes more clear: > now we immediately fail when we cross mountpoints. > > I think this patchset should get to -fixes and stable trees. > > I split everything to very small commits to make > everything as bisectable as possible. Thanks! But as said ealier in the thread folding the first three preparatory patches is fine. > > Minimal testing was performed. I tested that my original > reproducer doesn't reproduce anymore. And I did boot-test > with localmodconfig in qemu > > I'm not very attached to this patchset. I. e. I will not be offended > if someone else will submit different fix for this bug. > > Askar Safin (4): > vfs: fs/namei.c: move cross-device check to traverse_mounts > vfs: fs/namei.c: remove LOOKUP_NO_XDEV check from handle_mounts > vfs: fs/namei.c: move cross-device check to __traverse_mounts > vfs: fs/namei.c: if RESOLVE_NO_XDEV passed to openat2, don't *trigger* > automounts > > fs/namei.c | 29 +++++++++++++++++++++++------ > 1 file changed, 23 insertions(+), 6 deletions(-) > > -- > 2.47.2 >