libfs: massage path_from_stashed()
authorChristian Brauner <brauner@kernel.org>
Wed, 18 Jun 2025 20:53:37 +0000 (22:53 +0200)
committerChristian Brauner <brauner@kernel.org>
Thu, 19 Jun 2025 12:28:24 +0000 (14:28 +0200)
Make it a littler easier to follow.

Link: https://lore.kernel.org/20250618-work-pidfs-persistent-v2-3-98f3456fd552@kernel.org
Reviewed-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/libfs.c

index 3541e22c87b5de52b410be96f158221201b61725..997d3a363ce6cb4dad9b932000fa97ec4ed3ed04 100644 (file)
@@ -2227,9 +2227,8 @@ int path_from_stashed(struct dentry **stashed, struct vfsmount *mnt, void *data,
        if (IS_ERR(res))
                return PTR_ERR(res);
        if (res) {
-               path->dentry = res;
                sops->put_data(data);
-               goto out_path;
+               goto make_path;
        }
 
        /* Allocate a new dentry. */
@@ -2246,15 +2245,14 @@ int path_from_stashed(struct dentry **stashed, struct vfsmount *mnt, void *data,
                dput(dentry);
                return PTR_ERR(res);
        }
-       path->dentry = res;
-       /* A dentry was reused. */
        if (res != dentry)
                dput(dentry);
 
-out_path:
-       WARN_ON_ONCE(path->dentry->d_fsdata != stashed);
-       WARN_ON_ONCE(d_inode(path->dentry)->i_private != data);
+make_path:
+       path->dentry = res;
        path->mnt = mntget(mnt);
+       VFS_WARN_ON_ONCE(path->dentry->d_fsdata != stashed);
+       VFS_WARN_ON_ONCE(d_inode(path->dentry)->i_private != data);
        return 0;
 }