lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <koypivw3zonvakx3k2ji5ti4oy5yv6t2yaretkbh6dd2f5h5uh@gjbuxu7ryph4>
Date: Fri, 6 Feb 2026 19:35:07 +0800
From: Hao Li <hao.li@...ux.dev>
To: Harry Yoo <harry.yoo@...cle.com>
Cc: Vlastimil Babka <vbabka@...e.cz>, akpm@...ux-foundation.org, 
	cl@...two.org, rientjes@...gle.com, roman.gushchin@...ux.dev, 
	linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] slub: let need_slab_obj_exts() return false if
 SLAB_NO_OBJ_EXT is set

On Fri, Feb 06, 2026 at 07:21:29PM +0900, Harry Yoo wrote:
> On Fri, Feb 06, 2026 at 11:03:08AM +0100, Vlastimil Babka wrote:
> > On 2/6/26 11:01, Harry Yoo wrote:
> > > On Fri, Feb 06, 2026 at 10:40:54AM +0100, Vlastimil Babka wrote:
> > >> On 2/6/26 01:53, Harry Yoo wrote:
> > >> > On Thu, Feb 05, 2026 at 08:07:23PM +0800, Hao Li wrote:
> > >> >> SLAB_NO_OBJ_EXT is set for boot caches, but need_slab_obj_exts() doesn't
> > >> >> check this flag. We should return false unconditionally when
> > >> >> SLAB_NO_OBJ_EXT is set.
> > >> >> 
> > >> >> Signed-off-by: Hao Li <hao.li@...ux.dev>
> > >> >> ---
> > >> > 
> > >> > Looks reasonable to me,
> > >> > Acked-by: Harry Yoo <harry.yoo@...cle.com>
> > >> 
> > >> Thanks, added to slab/for-7.0/obj_metadata
> > >> I think it doesn't change anything at the moment?
> > > 
> > > ...unless you enable memory allocation profiling :)
> > 
> > If I do, would kmem_cache or kmem_cache_node caches gotten obj_exts in
> > leftover space?
> 
> /me builds and tests a new kernel with mem profiling always enabled...
> 
> Yes, but only if merging is disabled.
> 
> If you disable slab merging with `slab_nomerge`, kmem_cache gets
> obj_exts from SLAB_OBJ_EXTS_IN_OBJ.
> 
> When I enable debug feature slab_debug=P (and thus change s->size),
> kmem_cache_node gets obj_exts from SLAB_OBJ_EXTS_IN_OBJ.

Thanks for testing, this matches what I've seen too.

Besides, even if the two boot caches, kmem_cache and kmem_cache_node, go through
the SLAB_OBJ_EXT_IN_OBJ path, it seems it wouldn't cause real trouble. We'd just
end up doing some unnecessary memset. So, as Vlastimil said, this patch is
mostly about doing the right thing.

-- 
Thanks,
Hao

> 
> -- 
> Cheers,
> Harry / Hyeonggon

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ