On Sat, May 27, 2023 at 12:45 AM Dave Chinner <david@xxxxxxxxxxxxx> wrote:
On Fri, May 26, 2023 at 12:04:02PM +0100, Joe Thornber wrote:
> 1) We have an api (ioctl, bio flag, whatever) that lets you
> reserve/guarantee a region:
>
> int reserve_region(dev, sector_t begin, sector_t end);
A C-based interface is not sufficient because the layer that must do
provsioning is not guaranteed to be directly under the filesystem.
We must be able to propagate the request down to the layers that
need to provision storage, and that includes hardware devices.
e.g. dm-thin would have to issue REQ_PROVISION on the LBA ranges it
allocates in it's backing device to guarantee that the provisioned
LBA range it allocates is also fully provisioned by the storage
below it....
Fine, bio flag it is.
> This api should be used minimally, eg, critical FS metadata only.
Plan for having to support tens of GBs of provisioned space in
filesystems, not tens of MBs....
Also fine.
I think there's a 2-3 solid days of coding to fully implement
REQ_PROVISION support in XFS, including userspace tool support.
Maybe a couple of weeks more to flush the bugs out before it's
largely ready to go.
So if there's buy in from the block layer and DM people for
REQ_PROVISION as described, then I'll definitely have XFS support
ready for you to test whenever dm-thinp is ready to go.
Great, this is what I wanted to hear. I guess we need an ack from the block guys and
then I'll get started.
- Joe
-- dm-devel mailing list dm-devel@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/dm-devel