On 2017年08月16日 19:21, Paolo Bonzini wrote: > On 16/08/2017 02:22, Lan Tianyu wrote: >> Xen vIOMMU device model will be in Xen hypervisor. Skip vIOMMU >> check for Xen here when vcpu number is more than 255. > > I think you still need to do a check for vIOMMU being enabled.
Yes, this will be done in the Xen tool stack and Qemu doesn't have such knowledge. Operations of create, destroy Xen vIOMMU will be done in the Xen tool stack. > > Paolo > >> Signed-off-by: Lan Tianyu <tianyu....@intel.com> >> --- >> hw/i386/pc.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/i386/pc.c b/hw/i386/pc.c >> index 5943539..fc17885 100644 >> --- a/hw/i386/pc.c >> +++ b/hw/i386/pc.c >> @@ -1260,7 +1260,7 @@ void pc_machine_done(Notifier *notifier, void *data) >> fw_cfg_modify_i16(pcms->fw_cfg, FW_CFG_NB_CPUS, pcms->boot_cpus); >> } >> >> - if (pcms->apic_id_limit > 255) { >> + if (pcms->apic_id_limit > 255 && !xen_enabled()) { >> IntelIOMMUState *iommu = >> INTEL_IOMMU_DEVICE(x86_iommu_get_default()); >> >> if (!iommu || !iommu->x86_iommu.intr_supported || >> >