On 10/4/22 8:07 AM, Niklas Schnelle wrote: > The .pgsize_bitmap property of struct iommu_ops is not a page mask but > rather has a bit set for each size of pages the IOMMU supports. As the > comment correctly pointed out at this moment the code only support 4K > pages so simply use SZ_4K here. > > Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxx> > Signed-off-by: Niklas Schnelle <schnelle@xxxxxxxxxxxxx> Reviewed-by: Matthew Rosato <mjrosato@xxxxxxxxxxxxx> > --- > drivers/iommu/s390-iommu.c | 9 +-------- > 1 file changed, 1 insertion(+), 8 deletions(-) > > diff --git a/drivers/iommu/s390-iommu.c b/drivers/iommu/s390-iommu.c > index 94c444b909bd..6bf23e7830a2 100644 > --- a/drivers/iommu/s390-iommu.c > +++ b/drivers/iommu/s390-iommu.c > @@ -12,13 +12,6 @@ > #include <linux/sizes.h> > #include <asm/pci_dma.h> > > -/* > - * Physically contiguous memory regions can be mapped with 4 KiB alignment, > - * we allow all page sizes that are an order of 4KiB (no special large page > - * support so far). > - */ > -#define S390_IOMMU_PGSIZES (~0xFFFUL) > - > static const struct iommu_ops s390_iommu_ops; > > struct s390_domain { > @@ -350,7 +343,7 @@ static const struct iommu_ops s390_iommu_ops = { > .probe_device = s390_iommu_probe_device, > .release_device = s390_iommu_release_device, > .device_group = generic_device_group, > - .pgsize_bitmap = S390_IOMMU_PGSIZES, > + .pgsize_bitmap = SZ_4K, > .get_resv_regions = s390_iommu_get_resv_regions, > .default_domain_ops = &(const struct iommu_domain_ops) { > .attach_dev = s390_iommu_attach_device,