qemuMonitorJSONGetCPUModelExpansion: Introduce @hv_passthrough argument

This continues and finishes propagation of the @hv_passthrough
argument started in the previous commit.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
Michal Privoznik 2022-12-19 15:27:08 +01:00
parent 7c12eb2397
commit ff8731680b
7 changed files with 14 additions and 9 deletions

View File

@ -3069,15 +3069,15 @@ virQEMUCapsProbeQMPHostCPU(virQEMUCaps *qemuCaps,
if (ARCH_IS_S390(qemuCaps->arch))
fail_no_props = false;
if (qemuMonitorGetCPUModelExpansion(mon, type, cpu, true, fail_no_props,
&modelInfo) < 0)
if (qemuMonitorGetCPUModelExpansion(mon, type, cpu, true, false,
fail_no_props, &modelInfo) < 0)
return -1;
/* Try to check migratability of each feature. */
if (modelInfo &&
ARCH_IS_X86(qemuCaps->arch) &&
qemuMonitorGetCPUModelExpansion(mon, type, cpu, false, fail_no_props,
&nonMigratable) < 0)
qemuMonitorGetCPUModelExpansion(mon, type, cpu, false, false,
fail_no_props, &nonMigratable) < 0)
return -1;
if (nonMigratable) {

View File

@ -12210,7 +12210,8 @@ qemuConnectCPUModelBaseline(virQEMUCaps *qemuCaps,
: QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC;
if (qemuMonitorGetCPUModelExpansion(proc->mon, expansion_type,
baseline, true, false, &result) < 0)
baseline, true,
false, false, &result) < 0)
return NULL;
if (qemuConnectStealCPUModelFromInfo(baseline, &result) < 0)

View File

@ -3181,6 +3181,7 @@ qemuMonitorGetCPUModelExpansion(qemuMonitor *mon,
qemuMonitorCPUModelExpansionType type,
virCPUDef *cpu,
bool migratable,
bool hv_passthrough,
bool fail_no_props,
qemuMonitorCPUModelInfo **model_info)
{
@ -3189,8 +3190,8 @@ qemuMonitorGetCPUModelExpansion(qemuMonitor *mon,
QEMU_CHECK_MONITOR(mon);
return qemuMonitorJSONGetCPUModelExpansion(mon, type, cpu,
migratable, fail_no_props,
model_info);
migratable, hv_passthrough,
fail_no_props, model_info);
}

View File

@ -1140,6 +1140,7 @@ int qemuMonitorGetCPUModelExpansion(qemuMonitor *mon,
qemuMonitorCPUModelExpansionType type,
virCPUDef *cpu,
bool migratable,
bool hv_passthrough,
bool fail_no_props,
qemuMonitorCPUModelInfo **model_info);

View File

@ -5072,6 +5072,7 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitor *mon,
qemuMonitorCPUModelExpansionType type,
virCPUDef *cpu,
bool migratable,
bool hv_passthrough,
bool fail_no_props,
qemuMonitorCPUModelInfo **model_info)
{
@ -5085,7 +5086,7 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitor *mon,
*model_info = NULL;
if (!(model = qemuMonitorJSONMakeCPUModel(cpu, migratable, false)))
if (!(model = qemuMonitorJSONMakeCPUModel(cpu, migratable, hv_passthrough)))
return -1;
if ((rc = qemuMonitorJSONQueryCPUModelExpansionOne(mon, type, &model, &data)) <= 0)

View File

@ -449,6 +449,7 @@ qemuMonitorJSONGetCPUModelExpansion(qemuMonitor *mon,
qemuMonitorCPUModelExpansionType type,
virCPUDef *cpu,
bool migratable,
bool hv_passthrough,
bool fail_no_props,
qemuMonitorCPUModelInfo **model_info)
ATTRIBUTE_NONNULL(3) ATTRIBUTE_NONNULL(6);

View File

@ -455,7 +455,7 @@ cpuTestMakeQEMUCaps(const struct data *data)
if (qemuMonitorGetCPUModelExpansion(qemuMonitorTestGetMonitor(testMon),
QEMU_MONITOR_CPU_MODEL_EXPANSION_STATIC,
cpu, true, fail_no_props, &model) < 0)
cpu, true, false, fail_no_props, &model) < 0)
return NULL;
if (!(qemuCaps = virQEMUCapsNew()))