diff options
author | Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com> | 2018-11-30 19:14:00 +0800 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2018-12-11 10:29:39 +0100 |
commit | c4b17afb0a4e8d042320efaf2acf55cb26795f78 (patch) | |
tree | a594945f56effbc4c941ec961c27cc3f1b57c393 /drivers/acpi | |
parent | 51eb78098ab79bba8b1df24da2304e61deb74629 (diff) | |
download | linux-c4b17afb0a4e8d042320efaf2acf55cb26795f78.tar.bz2 |
iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages()
Change function __iommu_dma_alloc_pages() to allocate pages for DMA from
respective device NUMA node. The ternary operator which would be for
alloc_pages_node() is tidied along with this.
The motivation for this change is to have a policy for page allocation
consistent with direct DMA mapping, which attempts to allocate pages local
to the device, as mentioned in [1].
In addition, for certain workloads it has been observed a marginal
performance improvement. The patch caused an observation of 0.9% average
throughput improvement for running tcrypt with HiSilicon crypto engine.
We also include a modification to use kvzalloc() for kzalloc()/vzalloc()
combination.
[1] https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1692998.html
Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
[JPG: Added kvzalloc(), drop pages ** being device local, remove ternary operator, update message]
Signed-off-by: John Garry <john.garry@huawei.com>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/acpi')
0 files changed, 0 insertions, 0 deletions