From: "J. Bruce Fields" <bfields@fieldses.org>
From: Neil Brown <neilb@cse.unsw.edu.au>
This fixes an oops on unmount (failure of the assertation at
fs/ext3/super.c:421). Probably reproduceable just by creating and deleting a
single symlink over nfs and then unmounting the exported filesystem.
Recent change to fh_compose means dentry reference is *not* consumed, and so
usually has to be explicitly dput afterwards. One usage was missed in that
patch, so this dput is needed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
err = nfserrno(err);
fh_unlock(fhp);
- /* Compose the fh so the dentry will be freed ... */
cerr = fh_compose(resfhp, fhp->fh_export, dnew, fhp);
+ dput(dnew);
if (err==0) err = cerr;
out:
return err;