Commit 65cdbf10 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Alex Williamson
Browse files

vfio/iommu_type1: initialize pgsize_bitmap in ->open



Ensure pgsize_bitmap is always valid by initializing it to PAGE_MASK
in vfio_iommu_type1_open and remove the now pointless update for
the external domain case in vfio_iommu_type1_attach_group, which was
just setting pgsize_bitmap to PAGE_MASK when only external domains
were attached.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20210924155705.4258-14-hch@lst.de


[aw: s/ULONG_MAX/PAGE_MASK/ per discussion in link]
Signed-off-by: default avatarAlex Williamson <alex.williamson@redhat.com>
parent 89863904
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2196,7 +2196,6 @@ static int vfio_iommu_type1_attach_group(void *iommu_data,
		if (!iommu->external_domain) {
			INIT_LIST_HEAD(&domain->group_list);
			iommu->external_domain = domain;
			vfio_update_pgsize_bitmap(iommu);
		} else {
			kfree(domain);
		}
@@ -2582,6 +2581,7 @@ static void *vfio_iommu_type1_open(unsigned long arg)
	mutex_init(&iommu->lock);
	BLOCKING_INIT_NOTIFIER_HEAD(&iommu->notifier);
	init_waitqueue_head(&iommu->vaddr_wait);
	iommu->pgsize_bitmap = PAGE_MASK;

	return iommu;
}