v3 of:
https://listman.redhat.com/archives/libvir-list/2022-June/232288.html
diff to v2:
- More validation checks (e.g. max != 0, min <= max),
- Disallow -1 for virDomainSetIOThreadParams on a live VM,
- Extended docs,
- Reworded some commit messages.
Michal Prívozník (15):
virml: Introduce VIR_XML_PROP_NONNEGATIVE flag
virDomainDefParseIOThreads: Use g_autoptr() for @iothrid
virDomainIOThreadIDDefArrayInit: Decrease scope of @iothrid
conf: Move iothread formatter into a separate function
conf: Introduce allocator for virDomainIOThreadIDDef
conf: Introduce thread_pool_min and thread_pool_max attributes to
IOThread
qemu: Introduce QEMU_CAPS_IOTHREAD_THREAD_POOL_MAX
qemu_validate: Check if QEMU's capable of setting iothread pool size
qemu: Generate command line for IOThread pool size
include: Introduce typed params for virDomainSetIOThreadParams wrt
pool size
qemu: Wire up new virDomainSetIOThreadParams parameters
virsh: Wire up new virDomainSetIOThreadParams parameters
conf: Introduce <defaultiothread/>
qemu_validate: Check if QEMU's capable of setting <defaultiothread/>
pool size
qemu: Generate command line for <defaultiothread/> pool size
docs/formatdomain.rst | 17 +-
docs/manpages/virsh.rst | 13 +-
include/libvirt/libvirt-domain.h | 28 +++
src/conf/domain_conf.c | 162 +++++++++++++++---
src/conf/domain_conf.h | 11 ++
src/conf/domain_validate.c | 45 +++++
src/conf/schemas/domaincommon.rng | 25 +++
src/conf/virconftypes.h | 2 +
src/qemu/qemu_capabilities.c | 2 +
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 26 ++-
src/qemu/qemu_driver.c | 140 ++++++++++++++-
src/qemu/qemu_monitor.h | 4 +
src/qemu/qemu_monitor_json.c | 2 +
src/qemu/qemu_validate.c | 36 ++++
src/util/virxml.c | 7 +
src/util/virxml.h | 3 +
.../caps_7.1.0.x86_64.xml | 1 +
...othreads-ids-pool-sizes.x86_64-latest.args | 45 +++++
.../iothreads-ids-pool-sizes.xml | 62 +++++++
tests/qemuxml2argvtest.c | 1 +
...iothreads-ids-pool-sizes.x86_64-latest.xml | 1 +
tests/qemuxml2xmltest.c | 1 +
tools/virsh-domain.c | 24 ++-
24 files changed, 621 insertions(+), 38 deletions(-)
create mode 100644 tests/qemuxml2argvdata/iothreads-ids-pool-sizes.x86_64-latest.args
create mode 100644 tests/qemuxml2argvdata/iothreads-ids-pool-sizes.xml
create mode 120000 tests/qemuxml2xmloutdata/iothreads-ids-pool-sizes.x86_64-latest.xml
--
2.35.1