Re: [rfc] dma-mapping: preallocate unencrypted DMA atomic pool

From: Christoph Hellwig
Date: Thu Jan 09 2020 - 09:31:12 EST


On Tue, Jan 07, 2020 at 11:57:24AM -0800, David Rientjes wrote:
> I'll rely on Thomas to chime in if this doesn't make sense for the SEV
> usecase.
>
> I think the sizing of the single atomic pool needs to be determined. Our
> peak usage that we have measured from NVMe is ~1.4MB and atomic_pool is
> currently sized to 256KB by default. I'm unsure at this time if we need
> to be able to dynamically expand this pool with a kworker.
>
> Maybe when CONFIG_AMD_MEM_ENCRYPT is enabled this atomic pool should be
> sized to 2MB or so and then when it reaches half capacity we schedule some
> background work to dynamically increase it? That wouldn't be hard unless
> the pool can be rapidly depleted.
>

Note that a non-coherent architecture with the same workload would need
the same size.

> Do we want to increase the atomic pool size by default and then do
> background dynamic expansion?

For now I'd just scale with system memory size.