[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Qemu-devel] [PATCHv3] QEMU(upstream): Disable xen's use of O_DIRECT by default as it results in crashes.


--On 18 March 2013 14:03:49 +0100 Stefan Hajnoczi <stefanha@xxxxxxxxx> wrote:

From the mailing list discussion it appears that this patch is a
workaround - using the dom0 page cache to avoid the failed host kernel
paging request, which is caused by the true bug.

Has any progress been made at understanding the true problem?

It certainly is a workaround. My understanding is that ANY write with
O_DIRECT turned on can write data written to the page after the
O_DIRECT write is marked as complete, if tcp retransmit (and various
other skb related things) happen.

This thread is shorter that the one on xen-devel if you want to follow
the history and the explanation.

xen is particularly affected as the page in question is paged out
of dom0 when the access happens. However, anything using O_DIRECT
I/O to any form of network device (NFS, iSCSI, DRDB) is by my
analysis vulnerable to writing corrupt data.

Mel Gorman kindly forward ported (but not to tip) Ian Campbell's
fragment tracking patch, and I sent it to netdev here:

Given this was originally raised as an issue in 2008, and probably
has been an issue 'forever', I think it would be fair to say there
has not been an enormous amount of interest in fixing the underlying

Alex Bligh

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.