• E
    qemu: enable monitor event reporting · 3566599a
    Eric Blake 提交于
    Wire up all the pieces to send arbitrary qemu events to a
    client using libvirt-qemu.so.  If the extra bookkeeping of
    generating event objects even when no one is listening turns
    out to be noticeable, we can try to further optimize things
    by adding a counter for how many connections are using events,
    and only dump events when the counter is non-zero; but for
    now, I didn't think it was worth the code complexity.
    
    * src/qemu/qemu_driver.c
    (qemuConnectDomainQemuMonitorEventRegister)
    (qemuConnectDomainQemuMonitorEventDeregister): New functions.
    * src/qemu/qemu_monitor.h (qemuMonitorEmitEvent): New prototype.
    (qemuMonitorDomainEventCallback): New typedef.
    * src/qemu/qemu_monitor_json.c (qemuMonitorJSONIOProcessEvent):
    Report events.
    * src/qemu/qemu_monitor.c (qemuMonitorEmitEvent): New function, to
    pass events through.
    * src/qemu/qemu_process.c (qemuProcessHandleEvent): Likewise.
    Signed-off-by: NEric Blake <eblake@redhat.com>
    3566599a
qemu_monitor.h 32.8 KB