On Mon, Apr 28, 2025 at 09:32:04AM +0800, Baolu Lu wrote:
> On 4/26/25 13:58, Nicolin Chen wrote:
> > +int iommufd_vcmdq_alloc_ioctl(struct iommufd_ucmd *ucmd)
> > +{
> > +   struct iommu_vcmdq_alloc *cmd = ucmd->cmd;
> > +   struct iommufd_viommu *viommu;
> > +   struct iommufd_vcmdq *vcmdq;
> > +   struct page **pages;
> > +   int max_npages, i;
> > +   dma_addr_t end;
> > +   int rc;
> > +
> > +   if (cmd->flags || cmd->type == IOMMU_VCMDQ_TYPE_DEFAULT)
> 
> I don't follow the check of 'cmd->type == IOMMU_VCMDQ_TYPE_DEFAULT'
> here. My understanding is that it states that "other values of type are
> not supported". If so, shouldn't it be,
> 
>       if (cmd->flags || cmd->type != IOMMU_VCMDQ_TYPE_DEFAULT)
> 
> ?

No. Only other (new) types will be supported. We have this:
"* @IOMMU_VCMDQ_TYPE_DEFAULT: Reserved for future use"
which means driver should define a new type.

We have the same DEFAULT type in vIOMMU/vEVENTQ allocators by
the way.

Thanks
Nicolin

Reply via email to