Re: [PATCH v2 02/12] docs: path-lookup: update path_to_nameidata() part

From: NeilBrown
Date: Sun Apr 18 2021 - 21:00:11 EST


On Tue, Mar 16 2021, Fox Chen wrote:

> No path_to_namei() anymore, step_into() will be called.
> Related commit: commit c99687a03a78 ("fold path_to_nameidata()
> into its only remaining caller")
>
> Signed-off-by: Fox Chen <foxhlchen@xxxxxxxxx>
> ---
> Documentation/filesystems/path-lookup.rst | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/Documentation/filesystems/path-lookup.rst b/Documentation/filesystems/path-lookup.rst
> index d07766375e13..a29d714431a3 100644
> --- a/Documentation/filesystems/path-lookup.rst
> +++ b/Documentation/filesystems/path-lookup.rst
> @@ -455,9 +455,10 @@ directly from walk_component() or from handle_dots(). It calls
> ``handle_mount()``, to check and handle mount points, in which a new
> ``struct path`` containing a counted reference to the new dentry and a
> reference to the new ``vfsmount`` which is only counted if it is
> -different from the previous ``vfsmount``. It then calls
> -``path_to_nameidata()`` to install the new ``struct path`` in the
> -``struct nameidata`` and drop the unneeded references.
> +different from the previous ``vfsmount`` will be created. Then if there is

That "will be created" messes up the sentence.
It would probably work to put it earlier:

It calls handle_mounts() to check and handle mount points, in which a
new struct path is created containing a counted reference to the new
dentry and a reference to the new vfsmount, which is only counted if
it is different from the previous vfsmount.

(I'm not sure about the comma I put in before the 'which' - Jon often
removes my commas, and sometimes changes 'which' to 'that'...)

> +symbolic link, ``step_into()`` calls ``pick_link()`` to deal with it, otherwise

"a symbolic link"

> +installs the new ``struct path`` in the ``struct nameidata`` and drop the

"it installs". Any maybe "into the". And "drops".

> +unneeded references.

So sentence is:
Then if there is a symbolic link, step_into() calls pick_link() to
deal with it, otherwise it installs the new struct path into the
struct nameidata, and drops the unneeded references.

With those changes,
Reviewed-by: NeilBrown <neilb@xxxxxxx>

Thanks,
NeilBrown

>
> This "hand-over-hand" sequencing of getting a reference to the new
> dentry before dropping the reference to the previous dentry may
> --
> 2.30.2

Attachment: signature.asc
Description: PGP signature