Re: [EXT] Re: [PATCH v5] iommu/virtio: Use page size bitmap supported by endpoint

From: Jean-Philippe Brucker
Date: Wed May 13 2020 - 06:45:51 EST


On Wed, May 13, 2020 at 09:15:22AM +0000, Bharat Bhushan wrote:
> Hi Jean,
>
> > -----Original Message-----
> > From: Michael S. Tsirkin <mst@xxxxxxxxxx>
> > Sent: Wednesday, May 6, 2020 5:53 AM
> > To: Bharat Bhushan <bbhushan2@xxxxxxxxxxx>
> > Cc: jean-philippe@xxxxxxxxxx; joro@xxxxxxxxxx; jasowang@xxxxxxxxxx;
> > virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx; iommu@xxxxxxxxxxxxxxxxxxxxxxxxxx;
> > linux-kernel@xxxxxxxxxxxxxxx; eric.auger.pro@xxxxxxxxx; eric.auger@xxxxxxxxxx
> > Subject: [EXT] Re: [PATCH v5] iommu/virtio: Use page size bitmap supported by
> > endpoint
[...]
> > > +struct virtio_iommu_probe_pgsize_mask {
> > > + struct virtio_iommu_probe_property head;
> > > + __u8 reserved[4];
> > > + __le64 pgsize_bitmap;
> > > +};
> > > +
> >
> > This is UAPI. Document the format of pgsize_bitmap please.
>
> I do not see uapi documentation in "Documentation" folder of other data struct in this file, am I missing something?

I'm not the one requesting this change, but I'm guessing you should add a
comment in this header, above pgsize_bitmap (which should actually be
called page_size_mask to follow the spec). I guess I'd add:

/* Same format as virtio_iommu_config::page_size_mask */

for this field, and then maybe change the comment of virtio_iommu_config,
currently "/* Supported page sizes */", to something more precise such as:

/*
* Bitmap of supported page sizes. The least significant bit indicates the
* smallest granularity and the other bits are hints indicating optimal
* block sizes.
*/

But I don't know how much should be spelled out here, since those details
are available in the spec.

Thanks,
Jean