xfs: I/O completion handlers must use NOFS allocations
When completing I/O requests we must not allow the memory allocator to recurse into the filesystem, as we might deadlock on waiting for the I/O completion otherwise. The only thing currently allocating normal GFP_KERNEL memory is the allocation of the transaction structure for the unwritten extent conversion. Add a memflags argument to _xfs_trans_alloc to allow controlling the allocator behaviour. Signed-off-by: NChristoph Hellwig <hch@lst.de> Reported-by: NThomas Neumann <tneumann@users.sourceforge.net> Tested-by: NThomas Neumann <tneumann@users.sourceforge.net> Reviewed-by: NAlex Elder <aelder@sgi.com> Signed-off-by: NAlex Elder <aelder@sgi.com>
Showing
想要评论请 注册 或 登录