On Fri, Jun 09, 2023 at 03:31:46AM +0000, Duan, Zhenzhong wrote: > > > >-----Original Message----- > >From: Peter Xu <pet...@redhat.com> > >Sent: Thursday, June 8, 2023 9:48 PM > >To: Duan, Zhenzhong <zhenzhong.d...@intel.com> > >Cc: qemu-devel@nongnu.org; m...@redhat.com; jasow...@redhat.com; > >pbonz...@redhat.com; richard.hender...@linaro.org; edua...@habkost.net; > >marcel.apfelb...@gmail.com; alex.william...@redhat.com; > >c...@redhat.com; da...@redhat.com; phi...@linaro.org; > >kwankh...@nvidia.com; c...@nvidia.com; Liu, Yi L <yi.l....@intel.com>; Peng, > >Chao P <chao.p.p...@intel.com> > >Subject: Re: [PATCH v3 4/5] intel_iommu: Fix address space unmap > > > >On Thu, Jun 08, 2023 at 05:52:30PM +0800, Zhenzhong Duan wrote: > >> During address space unmap, corresponding IOVA tree entries are also > >> removed. But DMAMap is set beyond notifier's scope by 1, so in theory > >> there is possibility to remove a continuous entry above the notifier's > >> scope but falling in adjacent notifier's scope. > > > >This function is only called in "loop over all notifiers" case (or replay() > >that just > >got removed, but even so there'll be only 1 notifier normally iiuc at least > >for > >vt-d), hopefully it means no bug exist (no Fixes needed, no backport needed > >either), but still worth fixing it up. > > Not two notifiers as vtd-ir splits for vt-d?
The two notifiers will all be attached to the same IOMMU mr, so IOMMU_NOTIFIER_FOREACH() will loop over them all always? And this actually shouldn't matter, IMHO, as the IR split has the 0xfeeXXXXX hole only, so when notifying with end=0xfee00000 (comparing to end=0xfedfffff) it shouldn't make a difference iiuc because there should have no iova entry at 0xfee00000 anyway in the tree. -- Peter Xu