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