Hi, This patch series covers iteration 6 of adding support for block provisioning requests. Changes from v5: - Remove explicit supports_provision from dm devices. - Move provision sectors io hint to pool_io_hint. Other devices will derive the provisioning limits from the stack. - Remove artifact from v4 to omit cell_defer_no_holder for REQ_OP_PROVISION. - Fix blkdev_fallocate() called with invalid fallocate modes to propagate errors correctly. Sarthak Kukreti (5): block: Don't invalidate pagecache for invalid falloc modes block: Introduce provisioning primitives dm: Add block provisioning support dm-thin: Add REQ_OP_PROVISION support loop: Add support for provision requests block/blk-core.c | 5 +++ block/blk-lib.c | 53 ++++++++++++++++++++++++++ block/blk-merge.c | 18 +++++++++ block/blk-settings.c | 19 ++++++++++ block/blk-sysfs.c | 9 +++++ block/bounce.c | 1 + block/fops.c | 31 +++++++++++++--- drivers/block/loop.c | 42 +++++++++++++++++++++ drivers/md/dm-crypt.c | 4 +- drivers/md/dm-linear.c | 1 + drivers/md/dm-snap.c | 7 ++++ drivers/md/dm-table.c | 23 ++++++++++++ drivers/md/dm-thin.c | 70 +++++++++++++++++++++++++++++++++-- drivers/md/dm.c | 6 +++ include/linux/bio.h | 6 ++- include/linux/blk_types.h | 5 ++- include/linux/blkdev.h | 16 ++++++++ include/linux/device-mapper.h | 17 +++++++++ 18 files changed, 319 insertions(+), 14 deletions(-) -- 2.40.1.521.gf1e218fcd8-goog