From: Avi Kivity <avi@redhat.com>
To: Daniel Gollub <gollub@b1-systems.de>
Cc: "Daniel P. Berrange" <berrange@redhat.com>,
kvm@vger.kernel.org, qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [PATCH 0/2] Introduce panic hypercall
Date: Mon, 20 Jun 2011 19:34:57 +0300 [thread overview]
Message-ID: <4DFF76B1.8020509@redhat.com> (raw)
In-Reply-To: <201106201826.32975.gollub@b1-systems.de>
On 06/20/2011 07:26 PM, Daniel Gollub wrote:
> >
> > I agree. But let's do this via a device, this way kvm need not be changed.
>
> Is a device reliable enough if the guest kernel crashes?
> Do you mean something like a hardware watchdog?
I'm proposing a 1:1 equivalent. Instead of issuing a hypercall that
tells the host about the panic, write to an I/O port that tells the host
about the panic.
> >
> > Do ILO cards / IPMI support something like this? We could follow their
> > lead in that case.
>
> The only two things which came to my mind are:
>
> * NMI (aka. ipmitool diag) - already available in qemu/kvm - but requires
> in-guest kexec/kdump
> * Hardware-Watchdog (also available in qemu/libvirt)
A watchdog has the advantage that is also detects lockups.
In fact you could implement the panic device via the existing
watchdogs. Simply program the timer for the minimum interval and
*don't* service the interrupt. This would work for non-virt setups as
well as another way to issue a reset.
> lguest and xen have something similar. They also have an hypercall which get
> called by a function registered in the panic_notifier_list. Not quite sure if
> you want to follow their lead.
We could do the same, except s/hypercall/writel/.
> Something I forgot to mention: This panic hypercall could also sit within an
> external kernel module ... to support (legacy) distribution.
Yes.
> >
> > > This series does need to introduce a QMP event notification upon
> > > crash, so that the crash notification can be propagated to mgmt
> > > layers above QEMU.
> >
> > Yes.
>
> Already done. I posted the QEMU relevant changes as a separated series to the
> KVM list ... since the initial implementation is KVM specific (KVM hypercall)
--
error compiling committee.c: too many arguments to function
WARNING: multiple messages have this Message-ID (diff)
From: Avi Kivity <avi@redhat.com>
To: Daniel Gollub <gollub@b1-systems.de>
Cc: qemu-devel <qemu-devel@nongnu.org>, kvm@vger.kernel.org
Subject: Re: [Qemu-devel] [PATCH 0/2] Introduce panic hypercall
Date: Mon, 20 Jun 2011 19:34:57 +0300 [thread overview]
Message-ID: <4DFF76B1.8020509@redhat.com> (raw)
In-Reply-To: <201106201826.32975.gollub@b1-systems.de>
On 06/20/2011 07:26 PM, Daniel Gollub wrote:
> >
> > I agree. But let's do this via a device, this way kvm need not be changed.
>
> Is a device reliable enough if the guest kernel crashes?
> Do you mean something like a hardware watchdog?
I'm proposing a 1:1 equivalent. Instead of issuing a hypercall that
tells the host about the panic, write to an I/O port that tells the host
about the panic.
> >
> > Do ILO cards / IPMI support something like this? We could follow their
> > lead in that case.
>
> The only two things which came to my mind are:
>
> * NMI (aka. ipmitool diag) - already available in qemu/kvm - but requires
> in-guest kexec/kdump
> * Hardware-Watchdog (also available in qemu/libvirt)
A watchdog has the advantage that is also detects lockups.
In fact you could implement the panic device via the existing
watchdogs. Simply program the timer for the minimum interval and
*don't* service the interrupt. This would work for non-virt setups as
well as another way to issue a reset.
> lguest and xen have something similar. They also have an hypercall which get
> called by a function registered in the panic_notifier_list. Not quite sure if
> you want to follow their lead.
We could do the same, except s/hypercall/writel/.
> Something I forgot to mention: This panic hypercall could also sit within an
> external kernel module ... to support (legacy) distribution.
Yes.
> >
> > > This series does need to introduce a QMP event notification upon
> > > crash, so that the crash notification can be propagated to mgmt
> > > layers above QEMU.
> >
> > Yes.
>
> Already done. I posted the QEMU relevant changes as a separated series to the
> KVM list ... since the initial implementation is KVM specific (KVM hypercall)
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2011-06-20 16:35 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-20 13:38 [PATCH 0/2] Introduce panic hypercall Daniel Gollub
2011-06-20 13:38 ` [PATCH 1/2] Inroduce panic hypercall KVM_HC_PANIC (host) Daniel Gollub
2011-06-20 13:38 ` [PATCH 2/2] Call KVM_HC_PANIC if guest panics Daniel Gollub
2011-06-20 15:31 ` [PATCH 0/2] Introduce panic hypercall Avi Kivity
2011-06-20 15:38 ` Daniel P. Berrange
2011-06-20 15:45 ` Avi Kivity
2011-06-20 15:45 ` [Qemu-devel] " Avi Kivity
2011-06-20 15:59 ` Jan Kiszka
2011-06-20 15:59 ` [Qemu-devel] " Jan Kiszka
2011-06-20 16:26 ` Daniel Gollub
2011-06-20 16:26 ` [Qemu-devel] " Daniel Gollub
2011-06-20 16:34 ` Avi Kivity [this message]
2011-06-20 16:34 ` Avi Kivity
2011-06-20 17:13 ` Jan Kiszka
2011-06-20 17:13 ` [Qemu-devel] " Jan Kiszka
2011-06-20 17:23 ` Avi Kivity
2011-06-20 17:23 ` [Qemu-devel] " Avi Kivity
2011-06-21 6:04 ` Gleb Natapov
2011-06-21 6:04 ` [Qemu-devel] " Gleb Natapov
2011-06-21 6:02 ` Gleb Natapov
2011-06-21 6:02 ` [Qemu-devel] " Gleb Natapov
2011-06-21 8:09 ` Avi Kivity
2011-06-21 8:09 ` [Qemu-devel] " Avi Kivity
2011-06-21 8:41 ` Gleb Natapov
2011-06-21 8:41 ` [Qemu-devel] " Gleb Natapov
2011-06-21 8:56 ` Avi Kivity
2011-06-21 8:56 ` [Qemu-devel] " Avi Kivity
2011-06-21 9:03 ` Gleb Natapov
2011-06-21 9:03 ` [Qemu-devel] " Gleb Natapov
2011-06-21 9:07 ` Avi Kivity
2011-06-21 9:07 ` [Qemu-devel] " Avi Kivity
2011-06-21 9:30 ` shawn che
2011-06-21 9:30 ` [Qemu-devel] " shawn che
2011-06-20 19:28 ` Anthony Liguori
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=4DFF76B1.8020509@redhat.com \
--to=avi@redhat.com \
--cc=berrange@redhat.com \
--cc=gollub@b1-systems.de \
--cc=kvm@vger.kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.