Re: [PATCH v2 1/1] vfio/type1: Respect IOMMU reserved regions in vfio_test_domain_fgsp()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2023-01-06 at 14:03 -0400, Jason Gunthorpe wrote:
> On Fri, Jan 06, 2023 at 10:24:50AM -0700, Alex Williamson wrote:
> 
> > > -	ret = iommu_map(domain->domain, 0, page_to_phys(pages), PAGE_SIZE * 2,
> > > -			IOMMU_READ | IOMMU_WRITE | IOMMU_CACHE);
> > > -	if (!ret) {
> > > -		size_t unmapped = iommu_unmap(domain->domain, 0, PAGE_SIZE);
> > > +	list_for_each_entry(region, regions, list) {
> > > +		if (region->end - region->start < PAGE_SIZE * 2 ||
> > > +				region->start % (PAGE_SIZE*2))
> > 
> > Maybe this falls into the noise, but we don't care if region->start is
> > aligned to a double page, so long as we can map an aligned double page
> > within the region.  Maybe something like:
> 
> > 	dma_addr_t start = ALIGN(region->start, PAGE_SIZE * 2);
> > 
> > 	if (start >= region->end || (region->end - start < PAGE_SIZE * 2))
> > 		continue;
> 
> Yeah, that is more technically correct
> 
> Jason

Makes sense, will incorporate this into v3.

Thanks,
Niklas




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux