nfsd: fix double-locks of directory mutex
authorJ. Bruce Fields <bfields@citi.umich.edu>
Tue, 6 Jan 2009 18:37:03 +0000 (13:37 -0500)
committerJ. Bruce Fields <bfields@citi.umich.edu>
Wed, 7 Jan 2009 20:40:45 +0000 (15:40 -0500)
commit9a8d248e2d2e9c880ac4561f27fea5dc200655bd
tree9033bfd8c10f7077d62095d5295e16acac9a4ab2
parent2779e3ae39645515cb6c1126634f47c28c9e7190
nfsd: fix double-locks of directory mutex

A number of nfsd operations depend on the i_mutex to cover more code
than just the fsync, so the approach of 4c728ef583b3d8 "add a vfs_fsync
helper" doesn't work for nfsd.  Revert the parts of those patches that
touch nfsd.

Note: we can't, however, remove the logic from vfs_fsync that was needed
only for the special case of nfsd, because a vfs_fsync(NULL,...) call
can still result indirectly from a stackable filesystem that was called
by nfsd.  (Thanks to Christoph Hellwig for pointing this out.)

Reported-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
fs/nfsd/vfs.c