提交 435330d0 编写于 作者: A Andrea Bolognani

qemu: Tweak Intel IOMMU command line generation

Mostly add comments explaining why there are two capabilites
for the same feature and how they interact.
Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
Reviewed-by: NJán Tomko <jtomko@redhat.com>
上级 a7a78c27
......@@ -6935,8 +6935,12 @@ qemuBuildIOMMUCommandLine(virCommandPtr cmd,
if (!iommu)
return 0;
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_MACHINE_IOMMU))
return 0; /* Already handled via -machine */
/* qemuDomainDeviceDefValidate() already made sure we have one of
* QEMU_CAPS_DEVICE_INTEL_IOMMU or QEMU_CAPS_MACHINE_IOMMU: here we
* handle the former case, while the latter is taken care of in
* qemuBuildMachineCommandLine() */
if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_INTEL_IOMMU))
return 0;
switch (iommu->model) {
case VIR_DOMAIN_IOMMU_MODEL_INTEL:
......@@ -7594,7 +7598,10 @@ qemuBuildMachineCommandLine(virCommandPtr cmd,
}
}
/* We don't report errors on missing cap here - -device code will do that */
/* qemuDomainDeviceDefValidate() already made sure we have one of
* QEMU_CAPS_DEVICE_INTEL_IOMMU or QEMU_CAPS_MACHINE_IOMMU: here we
* handle the latter case, while the former is taken care of in
* qemuBuildIOMMUCommandLine() */
if (def->iommu &&
virQEMUCapsGet(qemuCaps, QEMU_CAPS_MACHINE_IOMMU)) {
switch (def->iommu->model) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册