xfs: fix locking for DAX writes
authorChristoph Hellwig <hch@lst.de>
Mon, 19 Sep 2016 01:24:50 +0000 (11:24 +1000)
committerDave Chinner <david@fromorbit.com>
Mon, 19 Sep 2016 01:24:50 +0000 (11:24 +1000)
commit17879e8f865f4ed8b6f9041a2687ad40f13ae460
tree4d543b880fb8d762b4a57a4988a2099c1115428b
parenta7d73fe6c538fdba42635c0b8e73382fcd4bd667
xfs: fix locking for DAX writes

So far DAX writes inherited the locking from direct I/O writes, but
the direct I/O model of using shared locks for writes is actually
wrong for DAX.  For direct I/O we're out of any standards and don't
have to provide the Posix required exclusion between writers, but
for DAX which gets transparently enable on applications without any
knowledge of it we can't simply drop the requirement.  Even worse
this only happens for aligned writes and thus doesn't show up for
many typical use cases.

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