qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Amit Shah <amit.shah@redhat.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: Gleb Natapov <gleb@redhat.com>, kvm list <kvm@vger.kernel.org>,
	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>,
	KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Subject: Re: [Qemu-devel] [PATCH 0/2 v3] kvm: notify host when guest panicked
Date: Mon, 2 Apr 2012 16:24:17 +0530	[thread overview]
Message-ID: <20120402105417.GG15713@amit.redhat.com> (raw)
In-Reply-To: <4F7979F9.4060509@cn.fujitsu.com>

On (Mon) 02 Apr 2012 [18:05:45], Wen Congyang wrote:
> At 03/19/2012 03:33 PM, Wen Congyang Wrote:
> > At 03/08/2012 03:57 PM, Wen Congyang Wrote:
> >> We can know the guest is paniced when the guest runs on xen.
> >> But we do not have such feature on kvm.
> >>
> >> Another purpose of this feature is: management app(for example:
> >> libvirt) can do auto dump when the guest is crashed. If management
> >> app does not do auto dump, the guest's user can do dump by hand if
> >> he sees the guest is paniced.
> >>
> >> I touch the hypervisor instead of using virtio-serial, because
> >> 1. it is simple
> >> 2. the virtio-serial is an optional device, and the guest may
> >>    not have such device.
> >>
> >> Changes from v2 to v3:
> >> 1. correct spelling
> >>
> >> Changes from v1 to v2:
> >> 1. split up host and guest-side changes
> >> 2. introduce new request flag to avoid changing return values.
> > 
> > Hi all:
> > 
> > we neet this feature, but we don't decide how to implement it.
> > We have two solution:
> > 1. use vmcall
> > 2. use virtio-serial.
> 
> Hi, all
> 
> There are three solutions now:
> 1. use vmcall
> 2. use I/O port
> 3. use virtio-serial.
> 
> I think 1 and 2 are more simple than 3.
> 
> I am reading virtio-serial's driver recent days. It seems that
> if the virtio serial port is not opened at the host side, the
> data writen into this port will be discarded, and we will have
> no chance to know the guest is panicked.

The qemu-side implementation should exist within qemu itself; i.e. the
consumer of the data from the kernel-side will always have a
listener.  In this case, you don't have to worry about port not being
opened on the host side.

> To Amit:
> 
> Can we write message to a virtio serial port like this directly in
> the kernel space?

As I had mentioned earlier, an in-kernel API is currently missing, but
it will be very simple to add one.

> send_buf(panicked_port, message, message's length, true);
> 
> if port->outvq_full is true, is it OK to do this?

port->outvq_full means guest has sent out data to the host, but the
host has not consumed the data yet, and has not released the buffers
back to the guest.

If you indeed reach such a situation (essentially you should never,
there are enough buffers already to account for scheduling delays),
then newer data will be discarded, or you will have to wait to write
the newer data till the host-side frees up buffers in the virtqueues.

This isn't really different from other approaches -- if you use a
shared buffer between guest and host, and if the guest has new data
before the host has had a chance to read off the older buffer
contents, you either overwrite or wait for the host to read the older
stuff.


		Amit

      reply	other threads:[~2012-04-02 10:54 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-08  7:57 [Qemu-devel] [PATCH 0/2 v3] kvm: notify host when guest panicked Wen Congyang
2012-03-08  8:02 ` [Qemu-devel] [PATCH 1/2 " Wen Congyang
2012-03-08  8:04 ` [Qemu-devel] [PATCH 2/2 v3] kvm: set exit_reason to KVM_EXIT_GUEST_PANICKED " Wen Congyang
2012-03-08  8:06 ` [Qemu-devel] [PATCH 1/2 v3] update linux-headers Wen Congyang
2012-03-08  8:07 ` [Qemu-devel] [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   ` [Qemu-devel] [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-09 22:22             ` Marcelo Tosatti
2012-03-21 19:01               ` Anthony Liguori
2012-03-12  1:46             ` Wen Congyang
2012-03-08 11:13 ` [Qemu-devel] [PATCH 0/2 v3] kvm: notify host when guest panicked Avi Kivity
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-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 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
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                                               ` Anthony Liguori
2012-03-22  8:34                                                 ` Wen Congyang
2012-03-14 18:47                                       ` Eric Northup
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 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:40                   ` Amit Shah
2012-03-14 10:42                     ` Gleb Natapov
2012-03-14 10:57                 ` Daniel P. Berrange
2012-03-14 11:01                   ` Wen Congyang
2012-03-21 19:04             ` 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:42             ` Gleb Natapov
2012-03-21 16:18           ` Corey Minyard
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 19:19               ` Anthony Liguori
2012-03-22  1:05                 ` 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  7:28                 ` Gleb Natapov
2012-03-22  7:40                   ` Wen Congyang
2012-04-02 10:05   ` Wen Congyang
2012-04-02 10:54     ` Amit Shah [this message]

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=20120402105417.GG15713@amit.redhat.com \
    --to=amit.shah@redhat.com \
    --cc=avi@redhat.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 \
    --cc=wency@cn.fujitsu.com \
    /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).