• Paolo Bonzini's avatar
    qtest: split configuration of qtest accelerator and chardev · d4fce24f
    Paolo Bonzini authored
    qtest uses the icount infrastructure to implement a test-driven vm_clock.  This
    however is not necessary when using -qtest as a "probe" together with a normal
    TCG-, KVM- or Xen-based virtual machine.  Hence, split out the call to
    configure_icount into a new function that is called only for "-machine
    accel=qtest"; and disable those commands when running with an accelerator
    other than qtest.
    This also fixes an assertion failure with "qemu-system-x86_64 -machine
    accel=qtest" but no -qtest option.  This is a valid case, albeit somewhat
    weird; nothing will happen in the VM but you'll still be able to
    interact with the monitor or the GUI.
    Now that qtest_init is not limited to an int(void) function, change
    global variables that are not used outside qtest_init to arguments.
    And finally, cleanup useless parts of include/sysemu/qtest.h.  The file
    is not used at all for user-only emulation, and qtest is not available
    on Win32 due to its usage of sigwait.
    Reported-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Tested-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
qtest.c 13.6 KB