On Mon, Oct 26, 2026 at 02:16:21PM -0600, Keith Busch wrote: > On Mon, Oct 26, 2026 at 04:11:26PM -0400, Stefan Hajnoczi wrote: > > What happens when two large writes to the same sector run concurrently? > > Before, the result was either write A or write B. Now it's possible to > > get an interleaving of write A and B's data. > > That result is consistent with the storage hardware specs, too.
I double-checked the SCSI SBC spec and you're right. > > > I think this violates block device semantics and corrupts data. A > > serialization mechanism is needed if you want to do this. > > Seems like overkill and you still don't get a deterministic outcome: you > get either A or B, but you the host doesn't know which. If you need > deterministic data, then the onus is usually on the host side to not > send overlapping writes. Yes, QEMU only needs to implement the hardware semantics and doing more here is not necessary. Stefan
