knfsd: Fixed problem with NFS exporting directories which are mounted on.

Recent changes in NFSd cause a directory which is mounted-on
to not appear properly when the filesystem containing it is exported.

*exp_get* now returns -ENOENT rather than NULL and when
  commit 5d3dbbeaf5
removed the NULL checks, it didn't add a check for -ENOENT.

Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Neil Brown 2007-09-05 17:22:12 -04:00 committed by Linus Torvalds
parent 7d94143291
commit a1033be72c

View File

@ -115,7 +115,8 @@ nfsd_cross_mnt(struct svc_rqst *rqstp, struct dentry **dpp,
exp2 = rqst_exp_get_by_name(rqstp, mnt, mounts); exp2 = rqst_exp_get_by_name(rqstp, mnt, mounts);
if (IS_ERR(exp2)) { if (IS_ERR(exp2)) {
err = PTR_ERR(exp2); if (PTR_ERR(exp2) != -ENOENT)
err = PTR_ERR(exp2);
dput(mounts); dput(mounts);
mntput(mnt); mntput(mnt);
goto out; goto out;