qemu already support hot-plug and hot-unplug RNG device.
These patch will make libvirt support hot-plug/unplug RNG device for qemu driver.
v3:
-fix a wrong use of virJSONValueObjectCreate
-merge some new functions use qemu monitor in one patch
-merge tests fix in the patch which need fix tests
v2:
-remove a commit about add 4 new func in libvirt_private.syms and move them to
the commit which use these functions
-impove some commit subject
-improve the logic in virDomainRNGRemove
-remove qemuDomainRNGInsert
-unexport qemuDomainRNGRemove
-add a check if chardev and backend object ID have the same basic alias name
-rename need_remove to remove_chardev in qemuDomainAttachRNGDevice
-add qemu capability check for RNG device backend
Luyao Huang (9):
qemu: Add helper to assign RNG device aliases
qemu: refactor qemuBuildRNGDeviceArgs to allow reuse in RNG hotplug
conf: Introduce function to compare RNG devices.
conf: add 3 functions for insert,remove and find a RNG device
qemu: add id when build RNG device and rename object id
qemu: add functions for attach/detach RNG device via qemu monitor
audit: export virDomainAuditRNG
qemu: Implement RNG device hotplug on live level
qemu: Implement RNG device hotunplug on live level
src/conf/domain_audit.c | 2 +-
src/conf/domain_audit.h | 7 +
src/conf/domain_conf.c | 76 +++++++
src/conf/domain_conf.h | 9 +
src/libvirt_private.syms | 6 +
src/qemu/qemu_command.c | 69 ++++---
src/qemu/qemu_command.h | 5 +
src/qemu/qemu_driver.c | 12 +-
src/qemu/qemu_hotplug.c | 218 ++++++++++++++++++++-
src/qemu/qemu_hotplug.h | 7 +-
src/qemu/qemu_monitor.c | 43 ++++
src/qemu/qemu_monitor.h | 7 +
src/qemu/qemu_monitor_json.c | 43 ++++
src/qemu/qemu_monitor_json.h | 5 +
.../qemuxml2argv-aarch64-virt-virtio.args | 4 +-
.../qemuxml2argv-arm-vexpressa9-virtio.args | 4 +-
.../qemuxml2argv-arm-virt-virtio.args | 4 +-
.../qemuxml2argv-s390-piix-controllers.args | 2 +-
.../qemuxml2argv-s390-usb-none.args | 2 +-
.../qemuxml2argv-virtio-rng-ccw.args | 4 +-
.../qemuxml2argv-virtio-rng-default.args | 4 +-
.../qemuxml2argv-virtio-rng-egd.args | 4 +-
.../qemuxml2argv-virtio-rng-multiple.args | 8 +-
.../qemuxml2argv-virtio-rng-random.args | 4 +-
24 files changed, 501 insertions(+), 48 deletions(-)
--
1.8.3.1