Thread (8 messages) 8 messages, 3 authors, 2021-07-08

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

From: John Stultz <hidden>
Date: 2021-07-07 19:35:39
Also in: dri-devel, linux-media, lkml

On Tue, Jul 6, 2021 at 11:38 PM Christoph Hellwig [off-list ref] wrote:
On Wed, Jun 30, 2021 at 01:34:17AM +0000, John Stultz wrote:
quoted
This adds a shrinker controlled page pool, extracted
out of the ttm_pool logic, and abstracted out a bit
so it can be used by other non-ttm drivers.
Can you explain in detail why you need a differnt page pool over the one
maintained by the page allocator?  Fragmenting the memory into all kinds
of pools has lots of downsides, so the upsides need to be explained in
detail.
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
path.

thanks
-john
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help