Messages in this thread | | | From | (Eric W. Biederman) | Date | Fri, 11 Nov 2011 10:59:33 -0800 | Subject | Re: [PATCH 2/2] x86 amd_gart_64: Verify we can perform the remapping requested |
| |
Joerg Roedel <joro@8bytes.org> writes:
> On Mon, Oct 24, 2011 at 12:07:36PM +0200, Joerg Roedel wrote: >> On Mon, Oct 17, 2011 at 02:20:15PM -0700, Eric W. Biederman wrote: >> > >> > Recently I had a driver try with a peculiar 2G dma memory limit. >> > The driver failed in weird and strange ways because the GART remapping >> > apperture had been allocated above 2G where the driver cound not reach, >> > and no error was reported when the mappings were setup. >> > >> > Implement gart_dma_supported to test for this problem case and to return >> > and error if we can not support the remapping. >> >> You do basically the same as for swiotlb, so it must be good :) > > Okay, thinking more about this, I am not so sure anymore it is a really > good idea to fix it this way. It basically signals the driver that DMA > is not possible with the device if the aperture does not fit into > the dma_mask. But DMA within the ZONE_DMA might still work, no? > > So I think the right way to fix it is to return a dma-mapping error if > and only if the address needs to be remapped by the aperture (of swiotlb or > gart).
Perhaps I am mistaken but since the method is iommu type specific if we don't actually use the iommu we should not call the method so I think this is patch is already implementing what you want.
> This still allows the driver to use GFP_DMA allocations.
I definitely agree on that.
Eric
| |