Re: [PATCH 7/9] mm: kmemleak: erase page->s_mem in slab_destroy
From: Christoph Lameter
Date: Thu Jan 26 2023 - 06:29:28 EST
On Mon, 23 Jan 2023, George Prekas wrote:
> The field s_mem of struct page is initialized with the virtual address
> of the page in function alloc_slabmgmt. If kmalloc allocates an object
> that starts on this page, then kmemleak knows that this object has 2
> references. On slab_destroy, s_mem should not continue referring to any
> allocated object in the future.
Nope.
s_mem is a pointer to an array of objects. It is not a pointer to a page.
If a slab-caches is used for slabmanagement then these objects
contain slab metadata which may be a bit confusing.