From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Alex Bligh <alex@alex.org.uk>
Cc: Xen Devel <xen-devel@lists.xen.org>,
Ian Campbell <Ian.Campbell@citrix.com>,
Jan Beulich <JBeulich@suse.com>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: Fatal crash on xen4.2 HVM + qemu-xen dm + NFS
Date: Fri, 22 Feb 2013 12:41:29 -0500 [thread overview]
Message-ID: <20130222174129.GD7768@phenom.dumpdata.com> (raw)
In-Reply-To: <330E687E05E24E508F95A610@nimrod.local>
On Fri, Feb 22, 2013 at 05:28:42PM +0000, Alex Bligh wrote:
> Konrad / Stefano,
>
> Any update here?
Sorry, been so busy with bugs that this keeps on getting deferred.
>
> I can't help but think a crashed dom0 and guaranteed domU corruption is
> less bad than a theoretical data loss on a crash (not that we know
> that theoretical possibility exists yet).
So from a perspective of blkif protocol, as long as the sync requests
is properly being sent - then we are fine. I recall Stefano (or mayber Roger)
finding some oddity in the xen_disk were the fsync wasn't sent.
You should be able to test this rather easy by (in your guest)
mounting an ext3 or ext4 with barrier support and then looking at
the blktrace/blkparse to make sure that the sync commands are indeed hitting
the platter.
Thought there is probably a nice framework to do all of this automatically.
Perhaps fio does that already..
>
> I'm currently using this trivial patch
> https://github.com/abligh/qemu-upstream-4.2-testing-livemigrate/commit/a7d72
> 96aebc21af15074f3bf64c5c6795ca05f16
>
> Alex
>
>
> --On 5 February 2013 15:40:33 +0000 Alex Bligh <alex@alex.org.uk> wrote:
>
> >Konrad / Stefano,
> >
> >Any movement / ideas on this one?
> >
> >Alex
> >
> >--On 25 January 2013 11:28:31 +0000 Alex Bligh <alex@alex.org.uk> wrote:
> >
> >>Konrad,
> >>
> >>--On 23 January 2013 16:29:20 +0000 Stefano Stabellini
> >><stefano.stabellini@eu.citrix.com> wrote:
> >>
> >>>>diff --git a/hw/xen_disk.c b/hw/xen_disk.c
> >>>>index a402ac8..1c3a6f5 100644
> >>>>--- a/hw/xen_disk.c
> >>>>+++ b/hw/xen_disk.c
> >>>>@@ -603,7 +603,7 @@ static int blk_init(struct XenDevice *xendev)
> >>>> }
> >>>>
> >>>> /* read-only ? */
> >>>>- qflags = BDRV_O_NOCACHE | BDRV_O_CACHE_WB | BDRV_O_NATIVE_AIO;
> >>>>+ qflags = /* BDRV_O_NOCACHE | */ BDRV_O_CACHE_WB |
> >>>>BDRV_O_NATIVE_AIO; if (strcmp(blkdev->mode, "w") == 0) {
> >>>> qflags |= BDRV_O_RDWR;
> >>>> } else {
> >>>
> >>>Before going for something like that I would like a confirmation from
> >>>Konrad about blkfront behavior regarding barriers and
> >>>BLKIF_OP_FLUSH_DISKCACHE. I certainly don't want to risk data
> >>>corruptions.
> >>
> >>Any ideas?
> >>
> >>
> >>A slightly prettier patch would look like the one pasted
> >>below (not sent with git-sendemail so beware whitespace issues).
> >>
> >>--
> >>Alex Bligh
> >>
> >>commit a7d7296aebc21af15074f3bf64c5c6795ca05f16
> >>Author: Alex Bligh <alex@alex.org.uk>
> >>Date: Thu Jan 24 09:41:34 2013 +0000
> >>
> >> Disable use of O_DIRECT by default as it results in crashes.
> >>
> >> See:
> >> http://lists.xen.org/archives/html/xen-devel/2012-12/msg01154.html
> >> for more details.
> >>
> >>diff --git a/hw/xen_disk.c b/hw/xen_disk.c
> >>index a402ac8..a618d8d 100644
> >>--- a/hw/xen_disk.c
> >>+++ b/hw/xen_disk.c
> >>@@ -45,6 +45,8 @@ static int batch_maps = 0;
> >>
> >> static int max_requests = 32;
> >>
> >>+static int use_o_direct = 0;
> >>+
> >> /* ------------------------------------------------------------- */
> >>
> >> # define BLOCK_SIZE 512
> >>@@ -603,7 +605,7 @@ static int blk_init(struct XenDevice *xendev)
> >> }
> >>
> >> /* read-only ? */
> >>- qflags = BDRV_O_NOCACHE | BDRV_O_CACHE_WB | BDRV_O_NATIVE_AIO;
> >>+ qflags = (use_o_direct?BDRV_O_NOCACHE:0) | BDRV_O_CACHE_WB |
> >>BDRV_O_NATIVE_AIO;
> >> if (strcmp(blkdev->mode, "w") == 0) {
> >> qflags |= BDRV_O_RDWR;
> >> } else {
> >>
> >>
> >>
> >
> >
> >
> >--
> >Alex Bligh
> >
> >
>
>
>
> --
> Alex Bligh
next prev parent reply other threads:[~2013-02-22 17:41 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-14 14:54 Fatal crash on xen4.2 HVM + qemu-xen dm + NFS Alex Bligh
2012-12-17 10:10 ` Jan Beulich
2012-12-17 17:09 ` Alex Bligh
2013-01-16 10:56 ` Alex Bligh
2013-01-16 14:34 ` Stefano Stabellini
2013-01-16 15:06 ` Alex Bligh
2013-01-16 16:00 ` Alex Bligh
2013-01-16 16:27 ` Stefano Stabellini
2013-01-16 17:13 ` Alex Bligh
2013-01-16 17:33 ` Stefano Stabellini
2013-01-16 17:39 ` Stefano Stabellini
2013-01-16 18:14 ` Alex Bligh
2013-01-16 18:49 ` Stefano Stabellini
2013-01-16 19:00 ` Stefano Stabellini
2013-01-17 7:58 ` Alex Bligh
2013-01-16 18:12 ` Alex Bligh
2013-01-21 15:15 ` Alex Bligh
2013-01-21 15:23 ` Ian Campbell
2013-01-21 15:35 ` Alex Bligh
2013-01-21 15:50 ` Ian Campbell
2013-01-21 16:33 ` Alex Bligh
2013-01-21 16:51 ` Ian Campbell
2013-01-21 17:06 ` Alex Bligh
2013-01-21 17:29 ` Ian Campbell
2013-01-21 17:31 ` Alex Bligh
2013-01-21 17:32 ` Ian Campbell
2013-01-21 18:14 ` Alex Bligh
2013-01-22 10:05 ` Ian Campbell
2013-01-22 13:02 ` Alex Bligh
2013-01-22 13:13 ` Ian Campbell
2013-01-21 20:37 ` Alex Bligh
2013-01-22 10:07 ` Ian Campbell
2013-01-22 13:01 ` Alex Bligh
2013-01-22 13:14 ` Ian Campbell
2013-01-22 13:18 ` Alex Bligh
2013-01-22 10:13 ` Ian Campbell
2013-01-22 12:59 ` Alex Bligh
2013-01-22 15:46 ` Stefano Stabellini
2013-01-22 15:42 ` Stefano Stabellini
2013-01-22 16:09 ` Stefano Stabellini
2013-01-22 20:31 ` Alex Bligh
2013-01-23 11:52 ` Stefano Stabellini
2013-01-23 15:19 ` Alex Bligh
2013-01-23 16:29 ` Stefano Stabellini
2013-01-25 11:28 ` Alex Bligh
2013-02-05 15:40 ` Alex Bligh
2013-02-22 17:28 ` Alex Bligh
2013-02-22 17:41 ` Konrad Rzeszutek Wilk [this message]
2013-02-22 18:00 ` Stefano Stabellini
2013-02-22 19:53 ` Alex Bligh
2013-03-06 11:50 ` Alex Bligh
2013-03-07 1:01 ` Konrad Rzeszutek Wilk
2013-03-07 4:15 ` Stefano Stabellini
2013-03-07 10:47 ` [PATCH] QEMU(upstream): Disable xen's use of O_DIRECT by default as it results in crashes Alex Bligh
2013-03-08 3:18 ` Stefano Stabellini
2013-03-08 9:25 ` [PATCHv2] " Alex Bligh
2013-03-08 9:26 ` [PATCH] " Alex Bligh
2013-03-08 10:17 ` George Dunlap
2013-03-08 10:27 ` Alex Bligh
2013-03-08 10:35 ` George Dunlap
2013-03-08 10:50 ` Alex Bligh
2013-03-08 11:18 ` George Dunlap
2013-03-08 11:40 ` [PATCHv3] " Alex Bligh
2013-03-08 12:54 ` George Dunlap
2013-03-11 14:02 ` Alex Bligh
2013-03-11 14:42 ` George Dunlap
2013-03-11 17:48 ` Konrad Rzeszutek Wilk
2013-03-11 17:55 ` Ian Jackson
2013-03-14 17:06 ` Alex Bligh
2013-03-14 18:26 ` Ian Jackson
2013-03-12 12:08 ` Ian Campbell
2013-03-14 18:37 ` Stefano Stabellini
2013-03-14 19:30 ` Ian Jackson
2013-03-14 19:56 ` Alex Bligh
2013-03-15 9:28 ` Ian Campbell
2013-03-15 10:43 ` Stefano Stabellini
2013-03-15 11:21 ` Ian Jackson
2013-03-15 11:28 ` Stefano Stabellini
2013-03-15 11:37 ` Ian Jackson
2013-03-15 11:43 ` Stefano Stabellini
2013-03-15 12:43 ` Alex Bligh
2013-03-15 12:50 ` Ian Campbell
2013-03-15 18:31 ` Ian Jackson
2013-03-18 10:29 ` Alex Bligh
2013-03-18 11:47 ` Stefano Stabellini
2013-03-18 12:21 ` Alex Bligh
2013-03-08 11:41 ` [PATCH] " Alex Bligh
2013-03-08 10:28 ` George Dunlap
2013-03-08 10:45 ` Alex Bligh
2013-03-07 10:51 ` Fatal crash on xen4.2 HVM + qemu-xen dm + NFS Alex Bligh
2013-03-07 8:16 ` Alex Bligh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130222174129.GD7768@phenom.dumpdata.com \
--to=konrad.wilk@oracle.com \
--cc=Ian.Campbell@citrix.com \
--cc=JBeulich@suse.com \
--cc=alex@alex.org.uk \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).