Messages in this thread | | | From | David Vrabel <> | Subject | [PATCHv2 0/3]: dma,x86,xen: reduce SWIOTLB usage in Xen guests | Date | Wed, 12 Nov 2014 15:25:03 +0000 |
| |
On systems where DMA addresses and physical addresses are not 1:1 (such as Xen PV guests), the generic dma_get_required_mask() will not return the correct mask (since it uses max_pfn).
Some device drivers (such as mptsas, mpt2sas) use dma_get_required_mask() to set the device's DMA mask to allow them to use only 32-bit DMA addresses in hardware structures. This results in unnecessary use of the SWIOTLB if DMA addresses are more than 32-bits, impacting performance significantly.
This series allows Xen PV guests to override the default dma_get_required_mask() with one that calculated the DMA mask from the maximum MFN (and not the PFN).
The first patch removes a duplicated function between ia64 and common since we want a common implementation usage by ia64 and x86.
Changes in v2: - split x86 and xen changes into separate patches
David
| |