diff options
author | Christoph Hellwig <hch@infradead.org> | 2009-07-18 18:14:58 -0400 |
---|---|---|
committer | Felix Blyakher <felixb@sgi.com> | 2009-08-12 02:07:38 -0400 |
commit | 36fae17a648e0aee5d9560514d08477ef48dc87f (patch) | |
tree | ac01d872ec2f654e2c305485e79e95d05ccb0c27 /fs/xfs/xfs_attr.c | |
parent | 3f52c2f0a07c23771909cc53f2e9451a7f1bf253 (diff) |
xfs: switch to NOFS allocation under i_lock in xfs_buf_associate_memory
xfs_buf_associate_memory is used for setting up the spare buffer for the
log wrap case in xlog_sync which can happen under i_lock when called from
xfs_fsync. The i_lock mutex is taken in reclaim context so all allocations
under it must avoid recursions into the filesystem. There are a couple
more uses of xfs_buf_associate_memory in the log recovery code that are
also affected by this, but I'd rather keep the code simple than passing on
a gfp_mask argument. Longer term we should just stop requiring the memoery
allocation in xlog_sync by some smaller rework of the buffer layer.
Reported by the new reclaim context tracing in lockdep.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Felix Blyakher <felixb@sgi.com>
Signed-off-by: Felix Blyakher <felixb@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_attr.c')
0 files changed, 0 insertions, 0 deletions