From: Hu Tao <hutao@cn.fujitsu.com>
To: Sasha Levin <levinsasha928@gmail.com>
Cc: Andrew Jones <drjones@redhat.com>, kvm list <kvm@vger.kernel.org>,
Jan Kiszka <jan.kiszka@siemens.com>,
Marcelo Tosatti <mtosatti@redhat.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Gleb Natapov <gleb@redhat.com>,
qemu-devel <qemu-devel@nongnu.org>,
Blue Swirl <blauwirbel@gmail.com>, Avi Kivity <avi@redhat.com>,
Luiz Capitulino <lcapitulino@redhat.com>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Subject: Re: [Qemu-devel] [PATCH v11] kvm: notify host when the guest is panicked
Date: Tue, 6 Nov 2012 09:58:35 +0800 [thread overview]
Message-ID: <20121106015835.GA11971@localhost.localdomain> (raw)
In-Reply-To: <CA+1xoqdcaeAm05_=rx3h9KHph+j7Ab8vRG_w9yUk7jtn+wHuBg@mail.gmail.com>
On Tue, Oct 30, 2012 at 10:30:02PM -0400, Sasha Levin wrote:
> On Tue, Oct 30, 2012 at 9:48 PM, Wen Congyang <wency@cn.fujitsu.com> wrote:
> > At 10/31/2012 09:12 AM, Marcelo Tosatti Wrote:
> >> It has been asked earlier why a simple virtio device is not usable
> >> for this (with no response IIRC).
> >
> > 1. We can't use virtio device when the kernel is booting.
>
> So the issue here is the small window between the point the guest
> becomes "self aware" and to the point virtio drivers are loaded,
> right?
>
> I agree that if something happens during that interval, a
> "virtio-notifier" driver won't catch that, but anything beyond that is
> better done with a virtio driver, so how is the generic infrastructure
> added in this patch useful to anything beyond detecting panics in that
> initial interval?
Another point is dependency. To make panic notification more reliable,
we have to reduce its dependency on other parts of kernel as possible as
we can.
>
> > 2. The virtio's driver can be built as a module, and if it is not loaded
> > and the kernel is panicked, there is no way to notify the host.
>
> Even if the suggested virtio-notifier driver is built as a module, it
> would get auto-loaded when the guest is booting, so I'm not sure about
> this point?
>
> > 3. I/O port is more reliable than virtio device.
> > If virtio's driver has some bug, and it cause kernel panicked, we can't
> > use it. The I/O port is more reliable because it only depends on notifier
> > chain(If we use virtio device, it also depends on notifier chain).
>
> This is like suggesting that we let KVM emulate virtio-blk on it's
> own, parallel to the virtio implementation, so that even if there's a
> problem with virtio-blk, KVM can emulate a virtio-blk on it's own.
Not the same. On virtio-blk, if we can make use of virtio, why not? If
there is a problem of virtio-blk but caused by virtio itself, just fix
it in virtio.
But in the case of panic notification, more dependency means more
chances of failure of panic notification. Say, if we use a virtio device
to do panic notification, then we will fail if: virtio itself has
problems, virtio for some reason can't be deployed(neither built-in or
as a module), or guest doesn't support virtio, etc.
We choose IO because compared to virtio device, it is not that heavy and
less problematic.
>
> Furthermore, why stop at virtio? What if the KVM code has a bug and it
> doesn't pass IO properly? Or the x86 code? we still want panic
> notifications if that happens...
Better ideas are welcome.
--
Thanks,
Hu Tao
next prev parent reply other threads:[~2012-11-06 2:00 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-25 3:42 [Qemu-devel] [PATCH v11] kvm: notify host when the guest is panicked Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 1/6] start vm after reseting it Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 2/6] update kernel headers Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 3/6] add a new runstate: RUN_STATE_GUEST_PANICKED Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 4/6] add a new qevent: QEVENT_GUEST_PANICKED Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 5/6] introduce a new qom device to deal with panicked event Hu Tao
2012-10-25 3:42 ` [Qemu-devel] [PATCH v11 6/6] allower the user to disable pv event support Hu Tao
2012-10-31 1:12 ` [Qemu-devel] [PATCH v11] kvm: notify host when the guest is panicked Marcelo Tosatti
2012-10-31 1:48 ` Wen Congyang
2012-10-31 2:30 ` Sasha Levin
2012-10-31 23:15 ` Marcelo Tosatti
2012-11-06 1:58 ` Hu Tao [this message]
2012-11-09 20:17 ` Sasha Levin
2012-11-13 2:19 ` Marcelo Tosatti
2012-11-20 10:09 ` Hu Tao
2012-11-20 21:33 ` Marcelo Tosatti
2012-11-21 9:39 ` Gleb Natapov
2012-11-22 7:21 ` Hu Tao
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=20121106015835.GA11971@localhost.localdomain \
--to=hutao@cn.fujitsu.com \
--cc=avi@redhat.com \
--cc=blauwirbel@gmail.com \
--cc=drjones@redhat.com \
--cc=gleb@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=kvm@vger.kernel.org \
--cc=lcapitulino@redhat.com \
--cc=levinsasha928@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=qemu-devel@nongnu.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).