Am 26.03.2012 21:40, schrieb Richard Laager: > On Sat, 2012-03-24 at 16:30 +0100, Christoph Hellwig wrote: >> On Wed, Mar 14, 2012 at 01:14:18PM +0100, Paolo Bonzini wrote: >>> >>> Note that the discard granularity is only a hint, so it's really more a >>> maximum suggested value than a granularity. Outside of a cluster >>> boundary the format would still have to write zeros manually. >>> >>> Also, Linux for example will only round the number of sectors down to >>> the granularity, not the start sector. >> >> Which really is more of a bug than a feature. The current discard >> implementation in Linux is still very poor. > > The disk protocols do not require the granularity to be respected. It is > *only a hint*. Therefore, QEMU has to handle non-aligned discards. It > doesn't really matter what we wish was the case; this is the reality.
But we can do suboptimal things (like just ignoring the request if we didn't promise to zero data, or turn it into a non-discarding zero buffer write otherwise) if the OS knowingly uses misaligned discards. Not our bug then. Kevin