> From: Liu, Yi L <yi.l.liu@xxxxxxxxx> > Sent: Friday, January 31, 2020 8:41 PM > To: Alex Williamson <alex.williamson@xxxxxxxxxx> > Subject: RE: [RFC v3 1/8] vfio: Add VFIO_IOMMU_PASID_REQUEST(alloc/free) > > Hi Alex, > > > From: Alex Williamson [mailto:alex.williamson@xxxxxxxxxx] > > Sent: Thursday, January 30, 2020 7:56 AM > > To: Liu, Yi L <yi.l.liu@xxxxxxxxx> > > Subject: Re: [RFC v3 1/8] vfio: Add > > VFIO_IOMMU_PASID_REQUEST(alloc/free) > > > > On Wed, 29 Jan 2020 04:11:45 -0800 > > "Liu, Yi L" <yi.l.liu@xxxxxxxxx> wrote: > > > > > From: Liu Yi L <yi.l.liu@xxxxxxxxx> > > > [...] > > > + > > > +int vfio_mm_pasid_alloc(struct vfio_mm *vmm, int min, int max) { > > > + ioasid_t pasid; > > > + int ret = -ENOSPC; > > > + > > > + mutex_lock(&vmm->pasid_lock); > > > + if (vmm->pasid_count >= vmm->pasid_quota) { > > > + ret = -ENOSPC; > > > + goto out_unlock; > > > + } > > > + /* Track ioasid allocation owner by mm */ > > > + pasid = ioasid_alloc((struct ioasid_set *)vmm->mm, min, > > > + max, NULL); > > > > Is mm effectively only a token for this? Maybe we should have a > > struct vfio_mm_token since gets and puts are not creating a reference > > to an mm, but to an "mm token". > > yes, it is supposed to be a kind of token. vfio_mm_token is better naming. :-) Hi Alex, Just to double check if I got your point. Your point is to have a separate structure which is only wrap of mm or just renaming current vfio_mm would be enough? Regards, Yi Liu