Hi Zhenzhong,
On 2/17/25 4:02 AM, Duan, Zhenzhong wrote: > Hi Eric, > >> -----Original Message----- >> From: Eric Auger <eric.au...@redhat.com> >> Subject: [PATCH 3/5] hw/i386/intel_iommu: Tear down address spaces before >> IOMMU reset >> >> From: Peter Xu <pet...@redhat.com> >> >> No bug report for this, but logically tearing down of existing address >> space should happen before reset of IOMMU state / registers, because the >> current address spaces may still rely on those information. >> >> Signed-off-by: Peter Xu <pet...@redhat.com> >> Signed-off-by: Eric Auger <eric.au...@redhat.com> >> --- >> hw/i386/intel_iommu.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c >> index 21a8bf45f8..1bd9ae403b 100644 >> --- a/hw/i386/intel_iommu.c >> +++ b/hw/i386/intel_iommu.c >> @@ -4702,8 +4702,8 @@ static void vtd_reset_exit(Object *obj, ResetType type) >> IntelIOMMUState *s = INTEL_IOMMU_DEVICE(obj); >> >> trace_vtd_reset_exit(); >> - vtd_init(s); >> vtd_address_space_refresh_all(s); >> + vtd_init(s); > I'm not sure if we should have this change. vtd_switch_address_space() checks > s->dmar_enabled and vtd_init() updates s->dmar_enabled. With this change, > will we leave stale mapping there after reset? Yes I do agree. This could break the as switch. I will remove this patch. Eric > > Thanks > Zhenzhong > >> } >> >> static AddressSpace *vtd_host_dma_iommu(PCIBus *bus, void *opaque, int >> devfn) >> -- >> 2.47.1