Re: [PATCH RFC 1/3] fs: introduce helper d_path_fast()
From: Linus Torvalds
Date: Sat May 08 2021 - 18:18:05 EST
On Sat, May 8, 2021 at 2:06 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
>
> On Sat, May 08, 2021 at 01:39:45PM -0700, Linus Torvalds wrote:
>
> > +static inline int prepend_entries(struct prepend_buffer *b, const struct path *path, const struct path *root, struct mount *mnt)
>
> If anything, s/path/dentry/, since vfsmnt here will be equal to &mnt->mnt all along.
Too subtle for me.
And is it? Because mnt is from
mnt = real_mount(path->mnt);
earlier, while vfsmount is plain "path->mnt".
> > + return 2; // detached or not attached yet
> > + break;
>
> ?
Leftover. Good catch.
> > + parent = dentry->d_parent;
> > + prefetch(parent);
> > + error = prepend_name(b, &dentry->d_name);
> > + if (error)
> > + break;
>
> return error, surely?
Surely. Bad conversion to the separate function where I missed one of
the "break" statements.
> FWIW, if we go that way, I would make that
No arguments against that - I tried to keep it with the same structure
it had when it was inside prepend_path().
Which I obviously wasn't very good at (see your fixes above ;), but it
was *meant* to be a minimal patch with no structural change.
Linus