[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230418221207.244685-1-sarthakkukreti@chromium.org>
Date: Tue, 18 Apr 2023 15:12:03 -0700
From: Sarthak Kukreti <sarthakkukreti@...omium.org>
To: dm-devel@...hat.com, linux-block@...r.kernel.org,
linux-ext4@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-fsdevel@...r.kernel.org
Cc: Jens Axboe <axboe@...nel.dk>,
"Michael S. Tsirkin" <mst@...hat.com>,
Jason Wang <jasowang@...hat.com>,
Stefan Hajnoczi <stefanha@...hat.com>,
Alasdair Kergon <agk@...hat.com>,
Mike Snitzer <snitzer@...nel.org>,
Christoph Hellwig <hch@...radead.org>,
Brian Foster <bfoster@...hat.com>,
Theodore Ts'o <tytso@....edu>,
Andreas Dilger <adilger.kernel@...ger.ca>,
Bart Van Assche <bvanassche@...gle.com>,
Daniil Lunev <dlunev@...gle.com>,
"Darrick J. Wong" <djwong@...nel.org>
Subject: [PATCH v4 0/4] Introduce provisioning primitives for thinly provisioned storage
Hi,
This patch series is revision 4 of introducing a new mechanism to pass through provision requests on stacked thinly provisioned storage devices. See [1] for original cover letter.
[1] https://lore.kernel.org/lkml/ZDnMl8A1B1+Tfn5S@redhat.com/T/#md4f20113c2242755747ae069f84be720a6751012
Changelog:
V4:
- Fix UNSHARE and KEEP_SIZE handling in blkdev_fallocate.
- Split dm-thin support into a separate patch.
- Remove ranged provision request handling and adjust io hints to handle provisioning one block at a time.
- Add missing provision_supported for dm targets.
V3:
- Drop FALLOC_FL_PROVISION and use mode == 0 for provision requests.
- Drop fs-specific patches; will be sent out in a follow up series.
- Fix missing shared block handling for thin snapshots.
V2:
- Fix stacked limit handling.
- Enable provision request handling in dm-snapshot
- Don't call truncate_bdev_range if blkdev_fallocate() is called with
FALLOC_FL_PROVISION.
- Clarify semantics of FALLOC_FL_PROVISION and why it needs to be a separate flag
(as opposed to overloading mode == 0).
Sarthak Kukreti (4):
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 | 8 ++++
block/bounce.c | 1 +
block/fops.c | 25 +++++++++---
drivers/block/loop.c | 42 ++++++++++++++++++++
drivers/md/dm-crypt.c | 5 ++-
drivers/md/dm-linear.c | 2 +
drivers/md/dm-snap.c | 8 ++++
drivers/md/dm-table.c | 23 +++++++++++
drivers/md/dm-thin.c | 73 ++++++++++++++++++++++++++++++++---
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, 317 insertions(+), 15 deletions(-)
--
2.40.0.634.g4ca3ef3211-goog
Powered by blists - more mailing lists