Dan Williams
03cdadb040
block: disable block device DAX by default
...
The recent *sync enabling discovered that we are inserting into the
block_device pagecache counter to the expectations of the dirty data
tracking for dax mappings. This can lead to data corruption.
We want to support DAX for block devices eventually, but it requires
wider changes to properly manage the pagecache.
dump_stack+0x85/0xc2
dax_writeback_mapping_range+0x60/0xe0
blkdev_writepages+0x3f/0x50
do_writepages+0x21/0x30
__filemap_fdatawrite_range+0xc6/0x100
filemap_write_and_wait+0x4a/0xa0
set_blocksize+0x70/0xd0
sb_set_blocksize+0x1d/0x50
ext4_fill_super+0x75b/0x3360
mount_bdev+0x180/0x1b0
ext4_mount+0x15/0x20
mount_fs+0x38/0x170
Mark the support broken so its disabled by default, but otherwise still
available for testing.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reported-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Suggested-by: Dave Chinner <david@fromorbit.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Cc: Jens Axboe <axboe@fb.com>
Cc: Matthew Wilcox <matthew.r.wilcox@intel.com>
Cc: Al Viro <viro@ftp.linux.org.uk>
Cc: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-02-27 10:28:52 -08:00
..
partitions
mac: validate mac_partition is within sector
2015-11-20 08:49:28 -07:00
badblocks.c
block, badblocks: introduce devm_init_badblocks
2016-01-09 08:39:04 -08:00
bio-integrity.c
blk-integrity: checking for NULL instead of IS_ERR
2015-12-09 08:04:29 -07:00
bio.c
bio: return EINTR if copying to user space got interrupted
2016-02-12 08:17:41 -07:00
blk-cgroup.c
block: fix module reference leak on put_disk() call for cgroups throttle
2016-02-09 12:33:35 -07:00
blk-core.c
Merge remote-tracking branch 'mkp-scsi/4.5/scsi-fixes' into fixes
2016-02-04 21:37:52 -08:00
blk-exec.c
block: move PM request support to IDE
2015-05-05 13:40:42 -06:00
blk-flush.c
Revert "blk-flush: Queue through IO scheduler when flush not required"
2015-11-25 11:02:02 -07:00
blk-integrity.c
block, libnvdimm, nvme: provide a built-in blk_integrity nop profile
2015-10-21 14:43:45 -06:00
blk-ioc.c
mm, page_alloc: distinguish between being unable to sleep, unwilling to sleep and avoiding waking kswapd
2015-11-06 17:50:42 -08:00
blk-lib.c
block: re-add discard_granularity and alignment checks
2015-10-28 09:12:58 +09:00
blk-map.c
block: Copy a user iovec if it includes gaps
2015-09-11 09:03:50 -06:00
blk-merge.c
block: fix bio splitting on max sectors
2016-01-22 20:42:30 -07:00
blk-mq-cpu.c
blk-mq-cpumap.c
blk-mq: Avoid memoryless numa node encoded in hctx numa_node
2015-12-03 09:56:27 -07:00
blk-mq-sysfs.c
block: add block polling support
2015-11-07 10:40:47 -07:00
blk-mq-tag.c
blk-mq: add a flags parameter to blk_mq_alloc_request
2015-12-01 10:53:59 -07:00
blk-mq-tag.h
blk-mq: factor out a helper to iterate all tags for a request_queue
2015-10-01 10:10:57 +02:00
blk-mq.c
blk-mq: End unstarted requests on dying queue
2016-02-11 13:14:00 -07:00
blk-mq.h
blk-mq: add a flags parameter to blk_mq_alloc_request
2015-12-01 10:53:59 -07:00
blk-settings.c
block: Initialize max_dev_sectors to 0
2016-02-11 13:10:39 -07:00
blk-softirq.c
blk-sysfs.c
blk: fix overflow in queue_discard_max_hw_show
2016-02-17 10:20:42 -07:00
blk-tag.c
block: support different tag allocation policy
2015-01-23 14:15:46 -07:00
blk-throttle.c
cgroup: replace cgroup_on_dfl() tests in controllers with cgroup_subsys_on_dfl()
2015-09-18 11:56:28 -04:00
blk-timeout.c
block: remove REQ_NO_TIMEOUT flag
2015-12-22 09:38:34 -07:00
blk.h
block: defer timeouts to a workqueue
2015-12-22 09:38:16 -07:00
bounce.c
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
2015-09-19 18:57:09 -07:00
bsg-lib.c
bsg.c
block: Simplify bsg complete all
2015-02-04 09:57:52 -07:00
cfq-iosched.c
cgroup: replace cgroup_on_dfl() tests in controllers with cgroup_subsys_on_dfl()
2015-09-18 11:56:28 -04:00
cmdline-parser.c
compat_ioctl.c
deadline-iosched.c
deadline: remove unused struct member
2016-02-01 09:09:55 -07:00
elevator.c
block: check bio_mergeable() early before merging
2015-10-21 15:00:54 -06:00
genhd.c
Merge branch 'for-4.5/core' of git://git.kernel.dk/linux-block
2016-01-19 15:03:34 -08:00
ioctl.c
block: revert runtime dax control of the raw block device
2016-01-30 13:35:31 -08:00
ioprio.c
pidns: fix set/getpriority and ioprio_set/get in PRIO_USER mode
2015-11-06 17:50:42 -08:00
Kconfig
block: disable block device DAX by default
2016-02-27 10:28:52 -08:00
Kconfig.iosched
Makefile
Initial roundup of 4.5 merge window patches
2016-01-23 18:45:06 -08:00
noop-iosched.c
elevator: use list_{first,prev,next}_entry
2015-11-16 15:21:48 -07:00
partition-generic.c
block: use DAX for partition table reads
2016-01-30 13:35:32 -08:00
scsi_ioctl.c
mm, page_alloc: rename __GFP_WAIT to __GFP_RECLAIM
2015-11-06 17:50:42 -08:00
t10-pi.c
block: Consolidate static integrity profile properties
2015-10-21 14:42:38 -06:00