Re: [PATCH v4 43/45] namei: initialize parameters passed to step_into()

From: Al Viro
Date: Mon Jul 04 2022 - 17:05:10 EST


On Mon, Jul 04, 2022 at 01:51:16PM -0700, Linus Torvalds wrote:
> On Mon, Jul 4, 2022 at 1:46 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> >
> > Why is that a problem? It could have been moved to another parent,
> > but so it could after we'd crossed to the mounted and we wouldn't have
> > noticed (or cared).
>
> Yeah, see my other email.
>
> I agree that it might be a "we don't actually care" situation, where
> all we care about that the name was valid at one point (when we picked
> up that sequence point). So maybe we don't care about closing it.
>
> But even if so, I think it might warrant a comment, because I still
> feel like we're basically "throwing away" our previous sequence point
> information without ever checking it.
>
> Maybe all we ever care about is basically "this sequence point
> protects the dentry inode pointer for the next lookup", and when it
> comes to mount points that ends up being immaterial.

There is a problem, actually, but it's in a different place...
OK, let me try to write something resembling a formal proof and see
what falls out.