xfs: split direct IO write path from xfs_file_aio_write
authorDave Chinner <dchinner@redhat.com>
Mon, 10 Jan 2011 23:15:36 +0000 (10:15 +1100)
committerDave Chinner <david@fromorbit.com>
Mon, 10 Jan 2011 23:15:36 +0000 (10:15 +1100)
commitf0d26e860b6c496464c5c8165d7df08dabde01fa
treeaf6fe7630ff41ff6621e7d192d8d7333e1c65ac8
parent487f84f3f80bc6f00c59725e822653d3ec174b85
xfs: split direct IO write path from xfs_file_aio_write

The current xfs_file_aio_write code is a mess of locking shenanigans
to handle the different locking requirements of buffered and direct
IO. Start to clean this up by disentangling the direct IO path from
the mess.

This also removes the failed direct IO fallback path to buffered IO.
XFS handles all direct IO cases without needing to fall back to
buffered IO, so we can safely remove this unused path. This greatly
simplifies the logic and locking needed in the write path.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/xfs/linux-2.6/xfs_file.c