On Wed, Mar 14, 2012 at 01:49:48PM +0100, Paolo Bonzini wrote: > It does make the distinction. "I don't care" is UNMAP (or WRITE > SAME(16) with the UNMAP bit set); "I want to have zeroes" is WRITE > SAME(10) or WRITE SAME(16) with an all-zero payload.
But once the taget sets the unmap zeroes data bit even UNMAP / WRITE SAME with unmap have to zero all blocks touched. Also strictly speaking even the WRITE SAME with unmap requires a payload of zeroes, even if most targets don't bother to check for this.