From: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx> This will help with the following patch, which also requires config access. Signed-off-by: Marc-André Lureau <marcandre.lureau@xxxxxxxxxx> --- src/qemu/qemu_capabilities.c | 9 +++++---- src/qemu/qemu_capabilities.h | 9 +++++---- src/qemu/qemu_conf.c | 9 +++++---- tests/domaincapstest.c | 7 +++---- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 23b466c36e..fed7f998d3 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -6938,12 +6938,11 @@ virQEMUCapsFillDomainFeatureHypervCaps(virQEMUCaps *qemuCaps, int -virQEMUCapsFillDomainCaps(virQEMUCaps *qemuCaps, +virQEMUCapsFillDomainCaps(virQEMUDriverConfig *cfg, + virQEMUCaps *qemuCaps, virArch hostarch, virDomainCaps *domCaps, - bool privileged, - virFirmware **firmwares, - size_t nfirmwares) + bool privileged) { virDomainCapsOS *os = &domCaps->os; virDomainCapsDeviceDisk *disk = &domCaps->disk; @@ -6960,6 +6959,8 @@ virQEMUCapsFillDomainCaps(virQEMUCaps *qemuCaps, virDomainCapsLaunchSecurity *launchSecurity = &domCaps->launchSecurity; virDomainCapsDeviceNet *net = &domCaps->net; virDomainCapsDevicePanic *panic = &domCaps->panic; + virFirmware **firmwares = cfg->firmwares; + size_t nfirmwares = cfg->nfirmwares; virQEMUCapsFillDomainFeaturesFromQEMUCaps(qemuCaps, domCaps); diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h index ee71331a09..cca31172a6 100644 --- a/src/qemu/qemu_capabilities.h +++ b/src/qemu/qemu_capabilities.h @@ -28,6 +28,8 @@ #include "virfilecache.h" #include "virenum.h" +typedef struct _virQEMUDriverConfig virQEMUDriverConfig; + /* * Internal flags to keep track of qemu command line capabilities * @@ -864,12 +866,11 @@ void virQEMUCapsInitGuestFromBinary(virCaps *caps, virQEMUCaps *qemuCaps, virArch guestarch); -int virQEMUCapsFillDomainCaps(virQEMUCaps *qemuCaps, +int virQEMUCapsFillDomainCaps(virQEMUDriverConfig *cfg, + virQEMUCaps *qemuCaps, virArch hostarch, virDomainCaps *domCaps, - bool privileged, - virFirmware **firmwares, - size_t nfirmwares); + bool privileged); void virQEMUCapsFillDomainMemoryBackingCaps(virQEMUCaps *qemuCaps, virDomainCapsMemoryBacking *memoryBacking); diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c index 25cadf520d..f76e701898 100644 --- a/src/qemu/qemu_conf.c +++ b/src/qemu/qemu_conf.c @@ -1600,10 +1600,11 @@ virQEMUDriverGetDomainCapabilities(virQEMUDriver *driver, if (!(domCaps = virDomainCapsNew(path, machine, arch, virttype))) return NULL; - if (virQEMUCapsFillDomainCaps(qemuCaps, driver->hostarch, - domCaps, driver->privileged, - cfg->firmwares, - cfg->nfirmwares) < 0) + if (virQEMUCapsFillDomainCaps(cfg, + qemuCaps, + driver->hostarch, + domCaps, + driver->privileged) < 0) return NULL; return g_steal_pointer(&domCaps); diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c index e520c7d7bc..e4b03dfeab 100644 --- a/tests/domaincapstest.c +++ b/tests/domaincapstest.c @@ -98,10 +98,9 @@ fillQemuCaps(virDomainCaps *domCaps, if (!domCaps->machine) domCaps->machine = g_strdup(virQEMUCapsGetPreferredMachine(qemuCaps, virtType)); - if (virQEMUCapsFillDomainCaps(qemuCaps, domCaps->arch, domCaps, - false, - cfg->firmwares, - cfg->nfirmwares) < 0) + if (virQEMUCapsFillDomainCaps(cfg, + qemuCaps, domCaps->arch, domCaps, + false) < 0) return -1; /* The function above tries to query host's VFIO capabilities by calling -- 2.47.0