On Wed, Sep 12, 2018 at 01:59:06PM -0500, Brijesh Singh wrote: [...]
> > > } > > > return &iommu_as[devfn]->as; > > > } > > > @@ -1172,6 +1274,10 @@ static void amdvi_realize(DeviceState *dev, Error > > > **err) > > > return; > > > } > > > + /* Pseudo address space under root PCI bus. */ > > > + pcms->ioapic_as = amdvi_host_dma_iommu(bus, s, AMDVI_SB_IOAPIC_ID); > > > + s->intr_enabled = x86_iommu->intr_supported; > > > > So does this mean that AMD IR cannot be disabled if declared support? > > For VT-d, IR needs to be explicitly enabled otherwise disabled (even > > supported). > > > > > Yes, once its declared as supported then it can not disabled. Its > upto the guest OS to decide whether it want to use the intr remapping > feature by parsing the IVRS. This also brings question, should we > just enable it by default because its guest OS decision whether it > wants to use it or not. It's by default off? I mean: DEFINE_PROP_BOOL("intremap", X86IOMMUState, intr_supported, false), Then it's good to me, thanks. You could add a comment there explicitly mentioning that "IR will be enabled as long as declared support for AMD" since it might confuse some of the people like me... but it's optional. Regards, -- Peter Xu