From: Wen Congyang <wency@cn.fujitsu.com>
To: Eric Northup <digitaleric@google.com>
Cc: kvm list <kvm@vger.kernel.org>, Gleb Natapov <gleb@redhat.com>,
Jan Kiszka <jan.kiszka@siemens.com>,
qemu-devel <qemu-devel@nongnu.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Avi Kivity <avi@redhat.com>, Amit Shah <amit.shah@redhat.com>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Subject: Re: [PATCH 0/2 v3] kvm: notify host when guest panicked
Date: Thu, 15 Mar 2012 15:01:44 +0800 [thread overview]
Message-ID: <4F6193D8.8050101@cn.fujitsu.com> (raw)
In-Reply-To: <CAG7+5M0gEpoJ_jnC8_4Ae-xe2rr7+CJLZh3JjAhh=p=-2bEAcA@mail.gmail.com>
At 03/15/2012 02:46 AM, Eric Northup Wrote:
> On Wed, Mar 14, 2012 at 6:25 AM, Gleb Natapov <gleb@redhat.com> wrote:
>
>> On Wed, Mar 14, 2012 at 03:16:05PM +0200, Avi Kivity wrote:
>>> On 03/14/2012 03:14 PM, Gleb Natapov wrote:
>>>> On Wed, Mar 14, 2012 at 03:07:46PM +0200, Avi Kivity wrote:
>>>>> On 03/14/2012 01:11 PM, Wen Congyang wrote:
>>>>>>>
>>>>>>> I don't think we want to use the driver. Instead, have a small
>> piece of
>>>>>>> code that resets the device and pushes out a string (the panic
>> message?)
>>>>>>> without any interrupts etc.
>>>>>>>
>>>>>>> It's still going to be less reliable than a hypercall, I agree.
>>>>>>
>>>>>> Do you still want to use complicated and less reliable way?
>>>>>
>>>>> Are you willing to try it out and see how complicated it really is?
>>>>>
>>>>> While it's more complicated, it's also more flexible. You can
>>>>> communicate the panic message, whether the guest is attempting a
>> kdump
>>>>> and its own recovery or whether it wants the host to do it, etc., you
>>>>> can communicate less severe failures like oopses.
>>>>>
>>>> hypercall can take arguments to achieve the same.
>>>
>>> It has to be designed in advance; and every time we notice something's
>>> missing we have to update the host kernel.
>>>
>>
>> We and in the designed stage now. Not to late to design something flexible
>> :) Panic hypercall can take GPA of a buffer where host puts panic info
>> as a parameter. This buffer can be read by QEMU and passed to management.
>>
>
> If a host kernel change is in the works, I think it might be cleanest to
> have the host kernel export a new kind of VCPU exit for unhandled-by-KVM
> hypercalls. Then usermode can respond to the hypercall as appropriate.
> This would permit adding or changing future hypercalls without host kernel
> changes.
>
> "Guest panic" is almost the definition of not-a-fast-path, and so what's
> the reason to handle it in the host kernel.
>
> Punting to user-space wouldn't be a magic bullet for getting good
> interfaces designed, but in my opinion it is a better place to be doing
> them.
>
Do you mean that: the guest execute vmcall instruction, and the host kernel
exits to userspace. The userspace will deal with the vmexit?
Thanks
Wen Congyang
WARNING: multiple messages have this Message-ID (diff)
From: Wen Congyang <wency@cn.fujitsu.com>
To: Eric Northup <digitaleric@google.com>
Cc: Gleb Natapov <gleb@redhat.com>, Avi Kivity <avi@redhat.com>,
"Daniel P. Berrange" <berrange@redhat.com>,
kvm list <kvm@vger.kernel.org>,
qemu-devel <qemu-devel@nongnu.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
Jan Kiszka <jan.kiszka@siemens.com>,
Amit Shah <amit.shah@redhat.com>
Subject: Re: [PATCH 0/2 v3] kvm: notify host when guest panicked
Date: Thu, 15 Mar 2012 15:01:44 +0800 [thread overview]
Message-ID: <4F6193D8.8050101@cn.fujitsu.com> (raw)
In-Reply-To: <CAG7+5M0gEpoJ_jnC8_4Ae-xe2rr7+CJLZh3JjAhh=p=-2bEAcA@mail.gmail.com>
At 03/15/2012 02:46 AM, Eric Northup Wrote:
> On Wed, Mar 14, 2012 at 6:25 AM, Gleb Natapov <gleb@redhat.com> wrote:
>
>> On Wed, Mar 14, 2012 at 03:16:05PM +0200, Avi Kivity wrote:
>>> On 03/14/2012 03:14 PM, Gleb Natapov wrote:
>>>> On Wed, Mar 14, 2012 at 03:07:46PM +0200, Avi Kivity wrote:
>>>>> On 03/14/2012 01:11 PM, Wen Congyang wrote:
>>>>>>>
>>>>>>> I don't think we want to use the driver. Instead, have a small
>> piece of
>>>>>>> code that resets the device and pushes out a string (the panic
>> message?)
>>>>>>> without any interrupts etc.
>>>>>>>
>>>>>>> It's still going to be less reliable than a hypercall, I agree.
>>>>>>
>>>>>> Do you still want to use complicated and less reliable way?
>>>>>
>>>>> Are you willing to try it out and see how complicated it really is?
>>>>>
>>>>> While it's more complicated, it's also more flexible. You can
>>>>> communicate the panic message, whether the guest is attempting a
>> kdump
>>>>> and its own recovery or whether it wants the host to do it, etc., you
>>>>> can communicate less severe failures like oopses.
>>>>>
>>>> hypercall can take arguments to achieve the same.
>>>
>>> It has to be designed in advance; and every time we notice something's
>>> missing we have to update the host kernel.
>>>
>>
>> We and in the designed stage now. Not to late to design something flexible
>> :) Panic hypercall can take GPA of a buffer where host puts panic info
>> as a parameter. This buffer can be read by QEMU and passed to management.
>>
>
> If a host kernel change is in the works, I think it might be cleanest to
> have the host kernel export a new kind of VCPU exit for unhandled-by-KVM
> hypercalls. Then usermode can respond to the hypercall as appropriate.
> This would permit adding or changing future hypercalls without host kernel
> changes.
>
> "Guest panic" is almost the definition of not-a-fast-path, and so what's
> the reason to handle it in the host kernel.
>
> Punting to user-space wouldn't be a magic bullet for getting good
> interfaces designed, but in my opinion it is a better place to be doing
> them.
>
Do you mean that: the guest execute vmcall instruction, and the host kernel
exits to userspace. The userspace will deal with the vmexit?
Thanks
Wen Congyang
next prev parent reply other threads:[~2012-03-15 7:01 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-08 7:57 [PATCH 0/2 v3] kvm: notify host when guest panicked Wen Congyang
2012-03-08 8:02 ` [PATCH 1/2 " Wen Congyang
2012-03-08 8:04 ` [PATCH 2/2 v3] kvm: set exit_reason to KVM_EXIT_GUEST_PANICKED " Wen Congyang
2012-03-08 8:06 ` [PATCH 1/2 v3] update linux-headers Wen Congyang
2012-03-08 8:07 ` [PATCH 2/2 v3] deal with guest panicked event Wen Congyang
2012-03-08 10:08 ` Jan Kiszka
2012-03-08 10:11 ` Wen Congyang
2012-03-08 10:15 ` [RESEND][PATCH " Wen Congyang
2012-03-08 11:28 ` Avi Kivity
2012-03-08 11:36 ` Daniel P. Berrange
2012-03-08 11:52 ` Avi Kivity
2012-03-08 11:56 ` Daniel P. Berrange
2012-03-08 11:56 ` Daniel P. Berrange
2012-03-09 22:22 ` Marcelo Tosatti
2012-03-21 19:01 ` [Qemu-devel] " Anthony Liguori
2012-03-12 1:46 ` Wen Congyang
2012-03-12 1:46 ` Wen Congyang
2012-03-08 11:13 ` [PATCH 0/2 v3] kvm: notify host when guest panicked Avi Kivity
2012-03-08 11:13 ` Avi Kivity
2012-03-09 1:21 ` Wen Congyang
2012-03-09 1:21 ` Wen Congyang
2012-03-12 9:04 ` Wen Congyang
2012-03-12 10:33 ` Avi Kivity
2012-03-13 6:44 ` Wen Congyang
2012-03-13 8:54 ` Avi Kivity
2012-03-13 9:18 ` Daniel P. Berrange
2012-03-13 10:47 ` Avi Kivity
2012-03-13 10:47 ` Avi Kivity
2012-03-14 8:29 ` Wen Congyang
2012-03-14 8:29 ` Wen Congyang
2012-03-14 9:24 ` Avi Kivity
2012-03-14 9:53 ` Wen Congyang
2012-03-14 10:07 ` Avi Kivity
2012-03-14 10:26 ` Wen Congyang
2012-03-14 10:29 ` Avi Kivity
2012-03-14 10:46 ` Gleb Natapov
2012-03-14 10:48 ` Avi Kivity
2012-03-14 11:11 ` Wen Congyang
2012-03-14 11:11 ` Wen Congyang
2012-03-14 13:07 ` Avi Kivity
2012-03-14 13:13 ` Avi Kivity
2012-03-14 13:14 ` Gleb Natapov
2012-03-14 13:16 ` Avi Kivity
2012-03-14 13:25 ` Gleb Natapov
2012-03-14 18:46 ` Eric Northup
2012-03-15 7:01 ` Wen Congyang [this message]
2012-03-15 7:01 ` Wen Congyang
2012-03-15 10:39 ` Gleb Natapov
2012-03-15 11:25 ` Jan Kiszka
2012-03-15 11:46 ` Avi Kivity
2012-03-16 8:05 ` Wen Congyang
2012-03-21 19:12 ` [Qemu-devel] " Anthony Liguori
2012-03-22 8:34 ` Wen Congyang
2012-03-14 18:47 ` Eric Northup
2012-03-14 18:47 ` Eric Northup
2012-03-14 10:37 ` Amit Shah
2012-03-14 10:37 ` Amit Shah
2012-03-14 10:52 ` Wen Congyang
2012-03-14 10:52 ` Gleb Natapov
2012-03-14 10:57 ` Wen Congyang
2012-03-14 10:58 ` Gleb Natapov
2012-03-14 11:13 ` Wen Congyang
2012-03-14 11:13 ` Wen Congyang
2012-03-14 10:52 ` Avi Kivity
2012-03-14 10:58 ` Wen Congyang
2012-03-14 10:59 ` Daniel P. Berrange
2012-03-14 11:06 ` Wen Congyang
2012-03-14 11:11 ` Gleb Natapov
2012-03-14 11:17 ` Daniel P. Berrange
2012-03-14 10:59 ` Gleb Natapov
2012-03-14 10:57 ` Amit Shah
2012-03-14 9:51 ` Amit Shah
2012-03-14 10:04 ` Wen Congyang
2012-03-14 10:08 ` Avi Kivity
2012-03-14 10:08 ` Avi Kivity
2012-03-14 10:40 ` Amit Shah
2012-03-14 10:42 ` Gleb Natapov
2012-03-14 10:57 ` Daniel P. Berrange
2012-03-14 10:57 ` Daniel P. Berrange
2012-03-14 11:01 ` Wen Congyang
2012-03-14 11:01 ` Wen Congyang
2012-03-21 19:04 ` [Qemu-devel] " Anthony Liguori
2012-03-22 7:33 ` Gleb Natapov
2012-03-12 10:31 ` Avi Kivity
2012-03-19 7:33 ` Wen Congyang
2012-03-20 9:59 ` Wen Congyang
2012-03-20 15:45 ` Gleb Natapov
2012-03-21 0:56 ` Wen Congyang
2012-03-21 9:11 ` Gleb Natapov
2012-03-21 9:35 ` Wen Congyang
2012-03-21 9:35 ` Wen Congyang
2012-03-21 9:42 ` Gleb Natapov
2012-03-21 16:18 ` Corey Minyard
2012-03-21 16:24 ` Gleb Natapov
2012-03-21 16:24 ` Gleb Natapov
2012-03-21 16:25 ` Avi Kivity
2012-03-21 17:04 ` Daniel P. Berrange
2012-03-21 17:34 ` Avi Kivity
2012-03-21 18:17 ` Jan Kiszka
2012-03-21 18:17 ` Jan Kiszka
2012-03-21 19:19 ` [Qemu-devel] " Anthony Liguori
2012-03-22 1:05 ` Wen Congyang
2012-03-22 1:05 ` [Qemu-devel] " Wen Congyang
2012-03-22 7:31 ` Gleb Natapov
2012-03-22 7:44 ` Wen Congyang
2012-03-22 8:36 ` Gleb Natapov
2012-03-22 8:36 ` [Qemu-devel] " Gleb Natapov
2012-03-22 7:28 ` Gleb Natapov
2012-03-22 7:28 ` [Qemu-devel] " Gleb Natapov
2012-03-22 7:40 ` Wen Congyang
2012-04-17 3:14 ` Wen Congyang
2012-04-02 10:05 ` Wen Congyang
2012-04-02 10:54 ` Amit Shah
2012-04-02 10:54 ` Amit Shah
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=4F6193D8.8050101@cn.fujitsu.com \
--to=wency@cn.fujitsu.com \
--cc=amit.shah@redhat.com \
--cc=avi@redhat.com \
--cc=digitaleric@google.com \
--cc=gleb@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@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.