Messages in this thread | | | From | "Zhang, Tina" <> | Subject | RE: [PATCH v7 4/5] iommu: Support mm PASID 1:n with sva domains | Date | Fri, 13 Oct 2023 09:57:30 +0000 |
| |
Hi,
> -----Original Message----- > From: Jason Gunthorpe <jgg@ziepe.ca> > Sent: Thursday, October 12, 2023 9:43 PM > To: Zhang, Tina <tina.zhang@intel.com> > Cc: Tian, Kevin <kevin.tian@intel.com>; Lu Baolu <baolu.lu@linux.intel.com>; > Michael Shavit <mshavit@google.com>; Vasant Hegde > <vasant.hegde@amd.com>; Nicolin Chen ^C-cc=iommu @ lists . linux . dev > <nicolinc@nvidia.com>; linux-kernel@vger.kernel.org > Subject: Re: [PATCH v7 4/5] iommu: Support mm PASID 1:n with sva domains > > On Thu, Oct 12, 2023 at 11:01:11AM +0800, Tina Zhang wrote: > > > @@ -1188,15 +1193,26 @@ static inline bool > > tegra_dev_iommu_get_stream_id(struct device *dev, u32 *stream #ifdef > > CONFIG_IOMMU_SVA static inline void mm_pasid_init(struct mm_struct > > *mm) { > > - mm->pasid = IOMMU_PASID_INVALID; > > + /* > > + * During dup_mm(), a new mm will be memcpy'd from an old one > and that makes > > + * the new mm and the old one point to a same iommu_mm > instance. When either > > + * one of the two mms gets released, the iommu_mm instance is > freed, leaving > > + * the other mm running into a use-after-free/double-free problem. > To avoid > > + * the problem, zeroing the iommu_mm pointer of a new mm is > needed here. > > + */ > > + mm->iommu_mm = NULL; > > } > > newlines after all the }, between functions doesn't checkpatch complain? Checked with checkpatch but didn't see any complaining.
> > IMHO this hunk should be moved to the prior patch. In this patch, we switch to use mm->iommu_mm. That's why the iommu_mm initialization is put in this patch.
I think I met some problem about my mailbox when I was sending this new version. It didn't cc iommu@lists.linux.dev. Should I resend this version again or reply to the patches with iommu@lists.linux.dev cc'd?
Regards, -Tina > > But it all looks good to me now > > Thanks, > Jason
| |