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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to