From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:59468) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7lfB-00015V-Fo for qemu-devel@nongnu.org; Wed, 14 Mar 2012 06:42:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S7lel-0000EA-83 for qemu-devel@nongnu.org; Wed, 14 Mar 2012 06:42:37 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52214) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7lek-0000D9-W5 for qemu-devel@nongnu.org; Wed, 14 Mar 2012 06:42:11 -0400 Date: Wed, 14 Mar 2012 12:42:03 +0200 From: Gleb Natapov Message-ID: <20120314104203.GT2304@redhat.com> References: <4F58943E.1050402@redhat.com> <4F595B31.9090301@cn.fujitsu.com> <4F5DBC26.7060204@cn.fujitsu.com> <4F5DD0FD.9070904@redhat.com> <20120313091843.GB3800@redhat.com> <4F5F25BF.7060100@redhat.com> <4F6056FE.3020202@cn.fujitsu.com> <20120314095114.GA4136@amit.redhat.com> <4F606D38.2070107@cn.fujitsu.com> <20120314104004.GE2708@amit.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20120314104004.GE2708@amit.redhat.com> Subject: Re: [Qemu-devel] [PATCH 0/2 v3] kvm: notify host when guest panicked List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Amit Shah Cc: kvm list , Jan Kiszka , qemu-devel , "linux-kernel@vger.kernel.org" , Avi Kivity , KAMEZAWA Hiroyuki On Wed, Mar 14, 2012 at 04:10:04PM +0530, Amit Shah wrote: > On (Wed) 14 Mar 2012 [18:04:40], Wen Congyang wrote: > > At 03/14/2012 05:51 PM, Amit Shah Wrote: > > > On (Wed) 14 Mar 2012 [16:29:50], Wen Congyang wrote: > > >> At 03/13/2012 06:47 PM, Avi Kivity Wrote: > > >>> On 03/13/2012 11:18 AM, Daniel P. Berrange wrote: > > >>>> On Mon, Mar 12, 2012 at 12:33:33PM +0200, Avi Kivity wrote: > > >>>>> On 03/12/2012 11:04 AM, Wen Congyang wrote: > > >>>>>> Do you have any other comments about this patch? > > >>>>>> > > >>>>> > > >>>>> Not really, but I'm not 100% convinced the patch is worthwhile. It's > > >>>>> likely to only be used by Linux, which has kexec facilities, and you can > > >>>>> put talk to management via virtio-serial and describe the crash in more > > >>>>> details than a simple hypercall. > > >>>> > > >>>> As mentioned before, I don't think virtio-serial is a good fit for this. > > >>>> We want something that is simple & guaranteed always available. Using > > >>>> virtio-serial requires significant setup work on both the host and guest. > > >>> > > >>> So what? It needs to be done anyway for the guest agent. > > >>> > > >>>> Many management application won't know to make a vioserial device available > > >>>> to all guests they create. > > >>> > > >>> Then they won't know to deal with the panic event either. > > >>> > > >>>> Most administrators won't even configure kexec, > > >>>> let alone virtio serial on top of it. > > >>> > > >>> It should be done by the OS vendor, not the individual admin. > > >>> > > >>>> The hypercall requires zero host > > >>>> side config, and zero guest side config, which IMHO is what we need for > > >>>> this feature. > > >>> > > >>> If it was this one feature, yes. But we keep getting more and more > > >>> features like that and we bloat the hypervisor. There's a reason we > > >>> have a host-to-guest channel, we should use it. > > >>> > > >> > > >> I donot know how to use virtio-serial. > > >> > > >> I start vm like this: > > >> qemu ...\ > > >> -device virtio-serial \ > > >> -chardev socket,path=/tmp/foo,server,nowait,id=foo \ > > >> -device virtserialport,chardev=foo,name=port1 ... > > > > > > This is sufficient. On the host, you can open /tmp/foo using a custom > > > program or nc (nc -U /tmp/foo). On the guest, you can just open > > > /dev/virtio-ports/port1 and read/write into it. > > > > I have two questions: > > 1. does it OK to open this device when the guest is panicked? > > Depends on what kind of panic it is. If the guest can continue > operations inspite of the panic, it will be possible to write out the > data. > > > 2. how to prevent the userspace's program using this device? > > Mentioned in previous reply. > > BTW: an in-kernel API for reading/writing to ports isn't implemented > yet, because there's no user for it as of now. If you want to write > from the kernel to the host, there are trivial additions to the code > necessary. > > (However, I think it's better to do the writing from userspace instead > from the kernel itself). > In case of panic notifier this is out of question. -- Gleb.