On Fri, Jul 28, 2023 at 10:02:36AM +0000, Tian, Kevin wrote:
From: Liu, Yi L yi.l.liu@intel.com Sent: Monday, July 24, 2023 7:04 PM }
rc = iopt_table_enforce_dev_resv_regions(&hwpt->ioas->iopt, idev-
dev,
&idev->igroup-
sw_msi_start);
&idev->igroup-
sw_msi_start,
if (rc) goto err_unlock;!!hwpt->parent);
I prefer to not setting parent ioas to hwpt in iommufd_hw_pagetable_alloc().
Yes, the prior patch didn't add it to the iopt, so it shouldn't have an ioas set. The NESTED domains don't have an IOAS almost by definition.
then here ioas can be retrieved from hwpt->parent and then it'd be pretty clear that in nested case the sw_msi reservation happens in the parent instead of pretending the stage-1 hwpt has an ioas too.
Yeah, I'm confused by this patch as well. Since there should be no IOAS for the NESTED why are we messing with resv_regions?
Jason