On Tue, Jul 2, 2024 at 8:16 AM Suren Baghdasaryan <surenb@xxxxxxxxxx> wrote: > > On Tue, Jul 2, 2024 at 9:31 AM Vlastimil Babka <vbabka@xxxxxxx> wrote: > > > > On 6/30/24 9:20 PM, Suren Baghdasaryan wrote: > > > On Mon, Jun 17, 2024 at 3:04 AM Vlastimil Babka <vbabka@xxxxxxx> wrote: > > >> > > >> On 6/15/24 12:59 AM, Suren Baghdasaryan wrote: > > >> > slab_post_alloc_hook() uses prepare_slab_obj_exts_hook() to obtain > > >> > slabobj_ext object. Currently the only user of slabobj_ext object in > > >> > this path is memory allocation profiling, therefore when it's not enabled > > >> > this object is not needed. This also generates a warning when compiling > > >> > with CONFIG_MEM_ALLOC_PROFILING=n. Move the code under this configuration > > >> > to fix the warning. If more slabobj_ext users appear in the future, the > > >> > code will have to be changed back to call prepare_slab_obj_exts_hook(). > > >> > > > >> > Fixes: 4b8736964640 ("mm/slab: add allocation accounting into slab allocation and free paths") > > >> > Reported-by: kernel test robot <lkp@xxxxxxxxx> > > >> > Closes: https://lore.kernel.org/oe-kbuild-all/202406150444.F6neSaiy-lkp@xxxxxxxxx/ > > >> > Signed-off-by: Suren Baghdasaryan <surenb@xxxxxxxxxx> > > >> > > >> Acked-by: Vlastimil Babka <vbabka@xxxxxxx> > > >> > > >> But it seems to me we could remove the whole #ifdef if current->alloc_tag > > >> (which doesn't exist with !MEM_ALLOC_PROFILING) had an access helper, or > > >> there was a alloc_tag_add_current() variant? > > > > > > Hmm. I'll check if current->alloc_tag is the only reason for this > > > ifdef. If so then you are correct and we can simplify this code. > > > > The fix is now in mm-hotfixes-stable but we can cleanup for the future as a > > non-hotfix. > > Yes, it's on my TODO list now. Thanks! obj_exts->ref was also undefined when !MEM_ALLOC_PROFILING, so I moved that call into a separate hook. It's posted at https://lore.kernel.org/all/20240703015354.3370503-1-surenb@xxxxxxxxxx/ Thanks, Suren. > > >