RE: Thin provisioning & arrays

Black_David
2008-11-11T01:23:17Z

Dave,

> Treating it as a reliable command (i.e. it succeeds or returns
> an error) means that we can implement filesystems that can do
> unmapping in such a way that when the array reports that it is out
> of space we *know* that there is no free space that can be unmapped.
> i.e. no need for a "defrag" tool.

What if the filesystem block size and the array thin provisioning
chunk size don't match? It's still "defrag" time ...

> So how do you propose that a storage architect who is trying to
> design a reliable thin provisioning storage stack finds out which
> devices actually do reliable unmapping? Vendors are simply going
> to say they support the unmap command, which currently means
> anything from "ignore completely" to "always do the right thing".

The thin provisioning chunk size (coming) in the VPD page is a
possible place to start.

Do you want something that says "if an aligned multiple of the chunk
size is sent in UNMAP, then it will be unmapped?". That may be
plausible, but I don't want to hit an UNMAP that isn't an aligned
multiple with a CHECK CONDITION if there's something useful to do.

Thanks,
--David