You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to implement some KVMi based introspection functionality from the QEMU monitor itself: under qmp and hmp commands. That is - booting a KVMi-patched QEMU instance, connecting to its monitor, typing a monitor command and get some implemented introspection results.
I've followed the instructions from https://kvm-vmi.github.io/kvm-vmi/master/setup.html for bare-metal setup. Everything is fine - all the examples work. Moreover, when executing the exact same libvmi-interacting code (which I wrote for qmp function) as a separate program, everything initializes and works correctly.
--found KVM
LibVMI Version 0.13.0
LibVMI Driver Mode 1
--libkvmi path: /usr/local/lib/libkvmi.so
--completed driver init.
--got name from id (1 --> kvmi)
**set image_type = kvmi
--KVMi socket path: /tmp/introspector
--Connecting to KVMI...
--KVMi handshake:
-- VM name:
-- VM start time: 23:21:04 - Fri Jan 02 1970
--KVMi new guest:
-- UUID: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-- FD: 6
-- Protocol version: 1
--KVMi features:
-- VMFUNC: Yes
-- EPTP: Yes
-- VE: Yes
-- SPP: No
--KVMI connected
--VCPU count: 4
I wonder if it is actually possible to use KVMi from inside QEMU monitor commands or it is impossible by design (maybe KVMi relies on the same QEMU functionality and it somehow deadlocks while handshaking)?
Please let me know if there is extra information I can provide you.
The text was updated successfully, but these errors were encountered:
I'm trying to implement some KVMi based introspection functionality from the QEMU monitor itself: under qmp and hmp commands. That is - booting a KVMi-patched QEMU instance, connecting to its monitor, typing a monitor command and get some implemented introspection results.
QEMU extra args:
However, when executing the custom qmp command, something hangs in KVMi initialization process - seems to be related to Unix socket.
Wait condition timeouts in this fragment of libvmi code:
Checked that and turns out
poll()
doesn't succeed insideaccept_worker()
in libkvmi.Custom qmp command implementation uses standard libvmi initialization mechanism:
I've followed the instructions from https://kvm-vmi.github.io/kvm-vmi/master/setup.html for bare-metal setup. Everything is fine - all the examples work. Moreover, when executing the exact same libvmi-interacting code (which I wrote for qmp function) as a separate program, everything initializes and works correctly.
I wonder if it is actually possible to use KVMi from inside QEMU monitor commands or it is impossible by design (maybe KVMi relies on the same QEMU functionality and it somehow deadlocks while handshaking)?
Please let me know if there is extra information I can provide you.
The text was updated successfully, but these errors were encountered: