Previous version: https://listman.redhat.com/archives/libvir-list/2023-March/239164.html Changes: - patches 1 - 23 are new and do the following - refactors to typed param handling 1 - 15, 18 - addition of new typed param APIs needed for changing the type we use to store the poll parameters currently, 16, 17, 19 - conversion of the existing parameter handling for iothread poll attributes to unsigned long long 20 - 23 - patches 24 and 25 are patches 1 and 2 of the previous posting: - use unsigned long long to store the values and adjust the code Peter Krempa (25): virTypedParameterAssignValue: Drop 'copystr' parameter util: virtypedparam: Use proper enum type for all switch() statements virTypedParamsDeserialize: Remove unnecessary line breaks virTypedParameterAssignValueVArgs: Ensure proper typed param type in caller util: virtypedparam: Simplify error handling in virTypedParamListAdd* virtypedparam.h: Consistently use contemporary header style util: virtypedparam: Introduce virTypedParamListNew() util: typedparam: Introduce 'virTypedParamListConcat' qemuDomainGetStatsBlock: Don't directly access virTypedParamList util: virtypedparam: Introduce 'virTypedParamListFetch' Use 'virTypedParamListFetch' for extracting identity parameters list util: virtypedparam: Privatize definition of struct _virTypedParamList util: virtypedparam: Refactor return value of virTypedParamListStealParams util: virtypedparam: Store errors inside virTypedParamList util: virtypedparam: Remove return values from virTypedParamListAdd* APIs util: typedparam: Introduce virTypedParamListAddUnsigned util: virtypedparam: Introduce virTypedParamsGetUnsigned virTypedParamsValidate: Refactor variable declaration and cleanup virTypedParamsValidate: Allow typed params to be both _UINT and _ULLONG virsh: cmdIOThreadSet: Refactor to use virTypedParamList qemu: Remove iothread 'poll-' value validation qemu: Store all iothread's 'poll*' attributes as unsigned long long virsh: cmdIOThreadSet: Use bigger types for --poll-grow and --poll-shrink conf: Store the iothread 'poll' settings in the XML qemu: Use configured iothread poll parameters on startup docs/formatdomain.rst | 11 +- include/libvirt/libvirt-domain.h | 4 +- src/admin/admin_server.c | 118 ++--- src/conf/domain_conf.c | 41 +- src/conf/domain_conf.h | 7 + src/conf/schemas/domaincommon.rng | 19 + src/driver.c | 7 +- src/libvirt-domain.c | 14 +- src/libvirt_private.syms | 7 +- src/qemu/qemu_command.c | 18 + src/qemu/qemu_domainjob.c | 49 +-- src/qemu/qemu_driver.c | 409 ++++++------------ src/qemu/qemu_monitor.h | 4 +- src/qemu/qemu_monitor_json.c | 48 +- src/remote/remote_daemon_dispatch.c | 8 +- src/test/test_driver.c | 34 +- src/util/virtypedparam.c | 401 +++++++++++------ src/util/virtypedparam.h | 187 +++++--- ...othreads-ids-pool-sizes.x86_64-latest.args | 6 +- .../iothreads-ids-pool-sizes.xml | 12 +- tools/virsh-domain.c | 83 ++-- 21 files changed, 781 insertions(+), 706 deletions(-) -- 2.39.2