switch vfs_path_lookup() to struct path
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
16
fs/namei.c
16
fs/namei.c
@@ -1575,16 +1575,22 @@ int kern_path(const char *name, unsigned int flags, struct path *path)
|
||||
* @mnt: pointer to vfs mount of the base directory
|
||||
* @name: pointer to file name
|
||||
* @flags: lookup flags
|
||||
* @nd: pointer to nameidata
|
||||
* @path: pointer to struct path to fill
|
||||
*/
|
||||
int vfs_path_lookup(struct dentry *dentry, struct vfsmount *mnt,
|
||||
const char *name, unsigned int flags,
|
||||
struct nameidata *nd)
|
||||
struct path *path)
|
||||
{
|
||||
nd->root.dentry = dentry;
|
||||
nd->root.mnt = mnt;
|
||||
struct nameidata nd;
|
||||
int err;
|
||||
nd.root.dentry = dentry;
|
||||
nd.root.mnt = mnt;
|
||||
BUG_ON(flags & LOOKUP_PARENT);
|
||||
/* the first argument of do_path_lookup() is ignored with LOOKUP_ROOT */
|
||||
return do_path_lookup(AT_FDCWD, name, flags | LOOKUP_ROOT, nd);
|
||||
err = do_path_lookup(AT_FDCWD, name, flags | LOOKUP_ROOT, &nd);
|
||||
if (!err)
|
||||
*path = nd.path;
|
||||
return err;
|
||||
}
|
||||
|
||||
static struct dentry *__lookup_hash(struct qstr *name,
|
||||
|
Reference in New Issue
Block a user