lkml.org 
[lkml]   [2012]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 0/2 v3] kvm: notify host when guest panicked
    At 03/14/2012 06:57 PM, Daniel P. Berrange Wrote:
    > On Wed, Mar 14, 2012 at 03:21:14PM +0530, 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.
    >>
    >> See the following links for more details.
    >>
    >> https://fedoraproject.org/wiki/Features/VirtioSerial#How_To_Test
    >> http://www.linux-kvm.org/page/Virtio-serial_API
    >>
    >>> You said that there are too many channels. Does it mean /tmp/foo is a channel?
    >>
    >> You can have several such -device virtserialport. The -device part
    >> describes what the guest will see. The -chardev part ties that to the
    >> host-side part of the channel.
    >>
    >> /tmp/foo is the host end-point for the channel, in the example above,
    >> and /dev/virtio-ports/port1 is the guest-side end-point.
    >
    > If we do choose to use virtio-serial for panics (which I don't think
    > we should), then we should not expose it in the host filesystem. The
    > host side should be a virtual chardev backend internal to QEMU, in
    > the same way that 'spicevmc' is handled.

    Yes. But we don't decide to choose which now. I prefer to use vmcall.
    It is simple and more reliable.

    Thanks
    Wen Congyang

    >
    > Regards,
    > Daniel



    \
     
     \ /
      Last update: 2012-03-14 12:03    [W:0.026 / U:107.264 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site