RE: Thin device provisioning

David Woodhouse
2008-08-12T18:56:29Z

On Sat, 2008-08-09 at 13:12 -0400, Knight, Frederick wrote:
> You are free to create a single pair API between your filesystems and
> drivers and send SCSI commands one LBA/length pair at a time. However,
> I'm afraid the voting members of T10 (representing a number of other
> operating systems and their multitude of filesystems) preferred the list
> approach.

That seems like unneeded complexity to me. Admittedly the sample set of
file systems I've converted to use this is small so far -- only 2 -- but
it seems to me that it's always likely to be done in the 'free extent'
code path as we mark blocks free, and I can't see the file system really
taking advantage of the ability to pack multiple regions into the same
request.

It's hard for I/O elevators to merge these requests when they're not
contiguous, too -- it would require a lot of special-casing to make it
happen at that level.

It's also somewhat suboptimal that it doesn't match the T13 'TRIM'
proposal, which allows only a single range to be specified. That'll be
fun for anyone doing SCSI<->ATA conversion...

Has anyone actually claimed that they can and will use the list form,
and have they also told the T13 forum the same thing?

--
David Woodhouse Open Source Technology Centre
David.Woodhouse@intel.com Intel Corporation