block, dax: move "select DAX" from BLOCK to FS_DAX
authorDan Williams <dan.j.williams@intel.com>
Mon, 8 May 2017 17:55:27 +0000 (10:55 -0700)
committerDan Williams <dan.j.williams@intel.com>
Mon, 8 May 2017 17:55:27 +0000 (10:55 -0700)
commitef51042472f55b325fd7f2b26a2e29fd89757234
treead814d3a1537f69b6ca54c0417260324e8f1a6eb
parent74d71a01abef37f71d914f2105a4cb8712a2beb8
block, dax: move "select DAX" from BLOCK to FS_DAX

For configurations that do not enable DAX filesystems or drivers, do not
require the DAX core to be built.

Given that the 'direct_access' method has been removed from
'block_device_operations', we can also go ahead and remove the
block-related dax helper functions from fs/block_dev.c to
drivers/dax/super.c. This keeps dax details out of the block layer and
lets the DAX core be built as a module in the FS_DAX=n case.

Filesystems need to include dax.h to call bdev_dax_supported().

Cc: linux-xfs@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>
Cc: "Theodore Ts'o" <tytso@mit.edu>
Cc: Matthew Wilcox <mawilcox@microsoft.com>
Cc: Alexander Viro <viro@zeniv.linux.org.uk>
Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
Reviewed-by: Jan Kara <jack@suse.com>
Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
block/Kconfig
drivers/dax/super.c
fs/Kconfig
fs/block_dev.c
fs/ext2/super.c
fs/ext4/super.c
fs/xfs/xfs_super.c
include/linux/blkdev.h
include/linux/dax.h