diff options
Diffstat (limited to 'fs/exportfs/expfs.c')
| -rw-r--r-- | fs/exportfs/expfs.c | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/exportfs/expfs.c b/fs/exportfs/expfs.c index 645158dc33f1..c69927bed4ef 100644 --- a/fs/exportfs/expfs.c +++ b/fs/exportfs/expfs.c @@ -77,7 +77,7 @@ static bool dentry_connected(struct dentry *dentry)  		struct dentry *parent = dget_parent(dentry);  		dput(dentry); -		if (IS_ROOT(dentry)) { +		if (dentry == parent) {  			dput(parent);  			return false;  		} @@ -147,6 +147,7 @@ static struct dentry *reconnect_one(struct vfsmount *mnt,  	tmp = lookup_one_len_unlocked(nbuf, parent, strlen(nbuf));  	if (IS_ERR(tmp)) {  		dprintk("%s: lookup failed: %d\n", __func__, PTR_ERR(tmp)); +		err = PTR_ERR(tmp);  		goto out_err;  	}  	if (tmp != dentry) {  |