Re: [PATCH v2] mm/slub: Avoid list corruption when removing a slab from the full list

From: Christoph Lameter (Ampere)
Date: Mon Oct 07 2024 - 12:10:29 EST


On Tue, 8 Oct 2024, Hyeonggon Yoo wrote:

> > Is it possible to determine which commit introduced this issue, for a
> > stable cc?
>
> By code inspection I suspect it's around when SLUB's first introduced in 2007,
> more specifically commit 643b113849d8 ("slub: enable tracking of full slabs").
> Even v2.6 kernels do not seem to handle this case correctly.

Yes this is an error that was there in the beginning. Its a rare
condition that only occurs when debugging is enabled so its difficult to
trigger IRL.

> > Also in addition to what Hyeonggon proposed, we should perhaps mark
> > these consistency-failed slabs in a way that further freeing of objects
> > in them will also don't actually free anything, and thus not move the
> > slab back from full to partial list for further reuse.
>
> Yeah I was thinking of that too.
>

Right. Stop any processing on the slab page with metadata corruption.