>-----Original Message----- >From: Peter Xu <[email protected]> >Sent: Tuesday, June 6, 2023 2:42 AM >To: Duan, Zhenzhong <[email protected]> >Cc: [email protected]; [email protected]; [email protected]; >[email protected]; [email protected]; [email protected]; >[email protected]; [email protected]; >[email protected]; [email protected]; [email protected]; >[email protected]; [email protected]; Liu, Yi L <[email protected]>; Peng, >Chao P <[email protected]> >Subject: Re: [PATCH v2 3/4] memory: Document update on replay() > >On Thu, Jun 01, 2023 at 02:33:19PM +0800, Zhenzhong Duan wrote: >> diff --git a/include/exec/memory.h b/include/exec/memory.h index >> eecc3eec6702..9a523ef62a94 100644 >> --- a/include/exec/memory.h >> +++ b/include/exec/memory.h >> @@ -441,9 +441,9 @@ struct IOMMUMemoryRegionClass { >> * call the IOMMU translate method for every page in the address space >> * with flag == IOMMU_NONE and then call the notifier if translate >> * returns a valid mapping. If this method is implemented then it >> - * overrides the default behaviour, and must provide the full semantics >> - * of memory_region_iommu_replay(), by calling @notifier for every >> - * translation present in the IOMMU. >> + * overrides the default behavior, and must provide corresponding >> + * semantics depending on notifier's type, e.g. IOMMU_NOTIFIER_MAP, >> + * notify changed entries; IOMMU_NOTIFIER_FULL_MAP, notify full >entries. > >IIUC it was always trying to notify all existing entries only, rather than >changed >entries. VT-d used to unmap all so it was also true.
Thanks for point out, I confused with invalidation path, I'll drop it. Zhenzhong
