]> www.infradead.org Git - users/hch/block.git/commit
bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag
authorChristoph Hellwig <hch@lst.de>
Fri, 17 Jul 2020 09:09:34 +0000 (11:09 +0200)
committerChristoph Hellwig <hch@lst.de>
Fri, 17 Jul 2020 09:09:34 +0000 (11:09 +0200)
commitf8bec1f0b8769ef42e21c9449b3141ebacdb3532
tree75d5459fd19cf30bda7cd64fe4c12f18542e8e38
parent3a8d0a85dcc96454c667377f93df08e5484769a8
bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag

The BDI_CAP_STABLE_WRITES is one of the few bits of information in the
backing_dev_info shared between the block drivers and the writeback code.
To help untangling the dependency replace it with a queue flag and a
superblock flag derived from it.  This also helps with the case of e.g.
a file system requiring stable writes due to its own checksumming, but
not forcing it on other users of the block device like the swap code.

One downside is that we can't support the stable_pages_required bdi
attribute in sysfs anymore.  It is replaced with a queue attribute, that
can also be made writable for easier testing.

Signed-off-by: Christoph Hellwig <hch@lst.de>
18 files changed:
block/blk-integrity.c
block/blk-mq-debugfs.c
block/blk-sysfs.c
drivers/block/rbd.c
drivers/block/zram/zram_drv.c
drivers/md/dm-table.c
drivers/md/raid5.c
drivers/mmc/core/queue.c
drivers/nvme/host/core.c
drivers/nvme/host/multipath.c
drivers/scsi/iscsi_tcp.c
fs/super.c
include/linux/backing-dev.h
include/linux/blkdev.h
include/linux/fs.h
mm/backing-dev.c
mm/page-writeback.c
mm/swapfile.c