Re: [PATCH 12/14] iommufd: Add IOMMU_HWPT_ALLOC

Jason Gunthorpe
2023-03-21T17:16:49Z

On Fri, Mar 17, 2023 at 03:02:26AM +0000, Tian, Kevin wrote:
> > From: Jason Gunthorpe <jgg@nvidia.com>
> > Sent: Saturday, February 25, 2023 8:28 AM
> > +
> > +int iommufd_hwpt_alloc(struct iommufd_ucmd *ucmd)
> > +{
> > + struct iommu_hwpt_alloc *cmd = ucmd->cmd;
> > + struct iommufd_hw_pagetable *hwpt;
> > + struct iommufd_device *idev;
> > + struct iommufd_ioas *ioas;
> > + int rc;
> > +
> > + if (cmd->flags)
> > + return -EOPNOTSUPP;
>
> miss a check on the __reserved field.
>
> > +/**
> > + * struct iommu_hwpt_alloc - ioctl(IOMMU_HWPT_ALLOC)
> > + * @size: sizeof(struct iommu_hwpt_alloc)
> > + * @flags: Must be 0
> > + * @dev_id: The device to allocate this HWPT for
> > + * @pt_id: The IOAS to connect this HWPT to
> > + * @out_hwpt_id: The ID of the new HWPT
> > + * @__reserved: Must be 0
> > + *
> > + * Explicitly allocate a hardware page table object. This is the same object
> > + * type that is returned by iommufd_device_attach() and represents the
> > + * underlying iommu driver's iommu_domain kernel object.
> > + *
> > + * A normal HWPT will be created with the mappings from the given IOAS.
> > + */
>
> 'normal' is a confusing word in this context.

Got it, thanks

Jason