Re: [PATCH v3 3/7] mm, slab: allocate off-slab freelists as reclaimable when appropriate
From: Vlastimil Babka <hidden>
Date: 2018-07-20 09:40:00
Also in:
linux-api, lkml
From: Vlastimil Babka <hidden>
Date: 2018-07-20 09:40:00
Also in:
linux-api, lkml
On 07/19/2018 10:35 AM, Mel Gorman wrote:
On Wed, Jul 18, 2018 at 03:36:16PM +0200, Vlastimil Babka wrote:quoted
In SLAB, OFF_SLAB caches allocate management structures (currently just the freelist) from kmalloc caches when placement in a slab page together with objects would lead to suboptimal memory usage. For SLAB_RECLAIM_ACCOUNT caches, we can allocate the freelists from the newly introduced reclaimable kmalloc caches, because shrinking the OFF_SLAB cache will in general result to freeing of the freelists as well. This should improve accounting and anti-fragmentation a bit. Signed-off-by: Vlastimil Babka <redacted>I'm not quite convinced by this one. The freelist cache is tied to the lifetime of the slab and not the objects. A single freelist can be reclaimed eventually but for caches with many objects per slab, it could take a lot of shrinking random objects to reclaim one freelist. Functionally the patch appears to be fine.
Hm you're right that the reclaimability of freelist is maybe too much detached, and could do more harm than good for the reclaimable caches. I will probably drop it unless I can measure it's an improvement. Thanks.