Re: [PATCH v3 1/2] dma-direct: provide the ability to reserve per-numa CMA

From: Christoph Hellwig
Date: Wed Jul 22 2020 - 10:17:03 EST


On Sun, Jun 28, 2020 at 11:12:50PM +1200, Barry Song wrote:
> This is useful for at least two scenarios:
> 1. ARM64 smmu will get memory from local numa node, it can save its
> command queues and page tables locally. Tests show it can decrease
> dma_unmap latency at lot. For example, without this patch, smmu on
> node2 will get memory from node0 by calling dma_alloc_coherent(),
> typically, it has to wait for more than 560ns for the completion of
> CMD_SYNC in an empty command queue; with this patch, it needs 240ns
> only.
> 2. when we set iommu passthrough, drivers will get memory from CMA,
> local memory means much less latency.

I really don't like the config options. With the boot parameters
you can always hardcode that in CONFIG_CMDLINE anyway.