• D
    Add support for an explicit guest reboot event · 86132734
    Daniel P. Berrange 提交于
    The reboot event is not a normal lifecycle event, since the
    virtual machine on the host does not change state. Rather the
    guest OS is resetting the virtual CPUs. ie, the QEMU process
    does not restart. Thus, this does not belong in the current
    lifecycle events callback.
    
    This introduces a new event type
    
        VIR_DOMAIN_EVENT_ID_REBOOT
    
    It takes no parameters, besides the virDomainPtr, so it can
    use the generic callback signature.
    
    * daemon/remote.c: Dispatch reboot events to client
    * examples/domain-events/events-c/event-test.c: Watch for
      reboot events
    * include/libvirt/libvirt.h.in: Define new reboot event ID
    * src/conf/domain_event.c, src/conf/domain_event.h,
      src/libvirt_private.syms: Extend API to handle reboot events
    * src/qemu/qemu_driver.c: Connect to the QEMU monitor event
      for reboots and emit a libvirt reboot event
    * src/remote/remote_driver.c: Receive and dispatch reboot
      events to application
    * src/remote/remote_protocol.x: Wire protocol definition for
      reboot events
    86132734
qemu_driver.c 294.2 KB