diff options
author | 2009-10-19 04:03:46 +0000 | |
---|---|---|
committer | 2009-12-11 15:11:19 -0600 | |
commit | c56c9631cbe88f08854a56ff9776c1f310916830 (patch) | |
tree | 9069de0b572857072bc99334b8d5e1bce14ef13f /fs/jbd2/commit.c | |
parent | xfs: simplify inode teardown (diff) | |
download | linux-dev-c56c9631cbe88f08854a56ff9776c1f310916830.tar.xz linux-dev-c56c9631cbe88f08854a56ff9776c1f310916830.zip |
xfs: fix mmap_sem/iolock inversion in xfs_free_eofblocks
When xfs_free_eofblocks is called from ->release the VM might already
hold the mmap_sem, but in the write path we take the iolock before
taking the mmap_sem in the generic write code.
Switch xfs_free_eofblocks to only trylock the iolock if called from
->release and skip trimming the prellocated blocks in that case.
We'll still free them later on the final iput.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Alex Elder <aelder@sgi.com>
Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs/jbd2/commit.c')
0 files changed, 0 insertions, 0 deletions