On 05/19/2010 11:57 AM, Christoph Hellwig wrote:
On Tue, May 18, 2010 at 08:38:22PM +0300, Avi Kivity wrote:
Yes. Why would Linux post overlapping requests? makes
0xffffffff00000000 sense.
There may be a guest bug in here too. Christoph?
Overlapping writes are entirely fine from the guest POV, although they
should be rather unusual. We can update a page and send it out again
when it gets redirtied while still out on the wire.
But the device may reorder requests:
system device
issue request r1 for sector n page p
dma into buffer b1
modify contents of page p
issue request r2 for sector n page p
dma into buffer b2
complete r2
complete r1
Is there any guarantee r2 will complete after r1, or that b1 and b2 are
coherent? I'm not aware of any.
What about NFS O_DIRECT backing virtio-blk? Here, requests can
definitely be reordered, and the buffers are certainly not coherent
(since they're don't even exist once the data has left the NIC).
--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html