[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] question on c/s 15181
Herbert, are the changes below to use in_swiotlb_aperture() strictly necessary? They get us further away from native code, so I wonder if, for the purpose of being as close as possible to native, these could be reverted (in a larger patch that would get us closer to native in many other respects). Jan ******************************************************** @@ -605,10 +610,12 @@ swiotlb_unmap_sg(struct device *hwdev, s BUG_ON(dir == DMA_NONE); for (i = 0; i < nelems; i++, sg++) - if (sg->dma_address != SG_ENT_PHYS_ADDRESS(sg)) + if (in_swiotlb_aperture(sg->dma_address)) unmap_single(hwdev, (void *)bus_to_virt(sg->dma_address), sg->dma_length, dir); + else + gnttab_dma_unmap_page(sg->dma_address); } /* @@ -627,7 +634,7 @@ swiotlb_sync_sg_for_cpu(struct device *h BUG_ON(dir == DMA_NONE); for (i = 0; i < nelems; i++, sg++) - if (sg->dma_address != SG_ENT_PHYS_ADDRESS(sg)) + if (in_swiotlb_aperture(sg->dma_address)) sync_single(hwdev, (void *)bus_to_virt(sg->dma_address), sg->dma_length, dir); @@ -642,7 +649,7 @@ swiotlb_sync_sg_for_device(struct device BUG_ON(dir == DMA_NONE); for (i = 0; i < nelems; i++, sg++) - if (sg->dma_address != SG_ENT_PHYS_ADDRESS(sg)) + if (in_swiotlb_aperture(sg->dma_address)) sync_single(hwdev, (void *)bus_to_virt(sg->dma_address), sg->dma_length, dir); _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |