sunrpc: use vfs_path_lookup
use vfs_path_lookup instead of open-coding the necessary functionality. Signed-off-by: Josef 'Jeff' Sipek <jsipek@cs.sunysb.edu> Acked-by: Trond Myklebust <Trond.Myklebust@netapp.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Christoph Hellwig <hch@lst.de> Cc: Neil Brown <neilb@suse.de> Cc: Michael Halcrow <mhalcrow@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
16f1820028
commit
4ac4efc1f5
|
@ -460,21 +460,19 @@ static struct dentry_operations rpc_dentry_operations = {
|
|||
static int
|
||||
rpc_lookup_parent(char *path, struct nameidata *nd)
|
||||
{
|
||||
struct vfsmount *mnt;
|
||||
|
||||
if (path[0] == '\0')
|
||||
return -ENOENT;
|
||||
nd->mnt = rpc_get_mount();
|
||||
if (IS_ERR(nd->mnt)) {
|
||||
|
||||
mnt = rpc_get_mount();
|
||||
if (IS_ERR(mnt)) {
|
||||
printk(KERN_WARNING "%s: %s failed to mount "
|
||||
"pseudofilesystem \n", __FILE__, __FUNCTION__);
|
||||
return PTR_ERR(nd->mnt);
|
||||
return PTR_ERR(mnt);
|
||||
}
|
||||
mntget(nd->mnt);
|
||||
nd->dentry = dget(rpc_mount->mnt_root);
|
||||
nd->last_type = LAST_ROOT;
|
||||
nd->flags = LOOKUP_PARENT;
|
||||
nd->depth = 0;
|
||||
|
||||
if (path_walk(path, nd)) {
|
||||
if (vfs_path_lookup(mnt->mnt_root, mnt, path, LOOKUP_PARENT, nd)) {
|
||||
printk(KERN_WARNING "%s: %s failed to find path %s\n",
|
||||
__FILE__, __FUNCTION__, path);
|
||||
rpc_put_mount();
|
||||
|
|
Loading…
Reference in a new issue