block: Add support for DAX reads/writes to block devices
Orabug:
22913653
If a block device supports the ->direct_access methods, bypass the normal
DIO path and use DAX to go straight to memcpy() instead of allocating
a DIO and a BIO.
Includes support for the DIO_SKIP_DIO_COUNT flag in DAX, as is done in
do_blockdev_direct_IO().
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
(cherry picked from commit
bbab37ddc20bae4709bca8745c128c4f46fe63c5)
Signed-off-by: Dan Duval <dan.duval@oracle.com>