OSDN Git Service

nfsd: fix compose_entry_fh() failure exits
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 13 Apr 2012 04:32:14 +0000 (00:32 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Apr 2012 16:51:17 +0000 (09:51 -0700)
commit5479e78788760d38de644620c3331a4ca576a4f5
treee08523d95c9e0d23deb0ff1fbdba91d98e41c413
parent28432d8aebb58b2b348e0b5172a173b5d2a747e6
nfsd: fix compose_entry_fh() failure exits

commit efe39651f08813180f37dc508d950fc7d92b29a8 upstream.

Restore the original logics ("fail on mountpoints, negatives and in
case of fh_compose() failures").  Since commit 8177e (nfsd: clean up
readdirplus encoding) that got broken -
rv = fh_compose(fhp, exp, dchild, &cd->fh);
if (rv)
       goto out;
if (!dchild->d_inode)
goto out;
rv = 0;
out:
is equivalent to
rv = fh_compose(fhp, exp, dchild, &cd->fh);
out:
and the second check has no effect whatsoever...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: "J. Bruce Fields" <bfields@fieldses.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfsd/nfs3xdr.c