Re: page pools, was Re: [PATCH v9 1/5] drm: Add a sharable drm page-pool implementation

From: Christian König
Date: Thu Jul 08 2021 - 03:38:06 EST

Am 08.07.21 um 06:20 schrieb Christoph Hellwig:
On Wed, Jul 07, 2021 at 12:35:23PM -0700, John Stultz wrote:
So, as Christian mentioned, on the TTM side it's useful, as they are
trying to avoid TLB flushes when changing caching attributes.

For the dmabuf system heap purposes, the main benefit is moving the
page zeroing to the free path, rather than the allocation path. This
on its own doesn't save much, but allows us to defer frees (and thus
the zeroing) to the background, which can get that work out of the hot
I really do no think that is worth it to fragment the free pages.

And I think functionality like that should be part of the common page allocator.

I mean we already have __GFP_ZERO, why not have a background kernel thread which zeros free pages when a CPU core is idle? (I'm pretty sure we already have that somehow).