Hello, kernel test robot noticed "INFO:trying_to_register_non-static_key" on: commit: 3ae623ab8ec82241c38ef52190b96384a5d664c6 ("mm, mempool: reimplement slab mempools by kmem_cache_reserve") https://git.kernel.org/cgit/linux/kernel/git/vbabka/linux.git slub-reservations in testcase: boot compiler: clang-18 test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G (please refer to attached dmesg/kmsg for entire log/backtrace) +----------------------------------------+------------+------------+ | | 17f60c99bf | 3ae623ab8e | +----------------------------------------+------------+------------+ | INFO:trying_to_register_non-static_key | 0 | 6 | +----------------------------------------+------------+------------+ If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-lkp/202406141514.6a6cf495-lkp@xxxxxxxxx [ 2.600112][ T1] INFO: trying to register non-static key. [ 2.600690][ T1] The code is fine but needs lockdep annotation, or maybe [ 2.600690][ T1] you didn't initialize this object before use? [ 2.600690][ T1] turning off the locking correctness validator. [ 2.600690][ T1] CPU: 0 PID: 1 Comm: swapper Not tainted 6.10.0-rc1-00007-g3ae623ab8ec8 #1 [ 2.600690][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 [ 2.600690][ T1] Call Trace: [ 2.600690][ T1] dump_stack_lvl (lib/dump_stack.c:116) [ 2.600690][ T1] dump_stack (lib/dump_stack.c:123) [ 2.600690][ T1] assign_lock_key (kernel/locking/lockdep.c:?) [ 2.600690][ T1] register_lock_class (kernel/locking/lockdep.c:?) [ 2.600690][ T1] __lock_acquire (kernel/locking/lockdep.c:5014) [ 2.600690][ T1] ? __lock_acquire (kernel/locking/lockdep.c:3762) [ 2.600690][ T1] ? rcu_read_lock_any_held (kernel/rcu/update.c:386) [ 2.600690][ T1] ? __lock_acquire (kernel/locking/lockdep.c:3762) [ 2.600690][ T1] ? fb_io_write (drivers/video/fbdev/core/fb_io_fops.c:82) [ 2.600690][ T1] ? kvm_sched_clock_read (arch/x86/kernel/kvmclock.c:91) [ 2.600690][ T1] ? sched_clock_noinstr (arch/x86/kernel/tsc.c:266) [ 2.600690][ T1] ? local_clock_noinstr (kernel/sched/clock.c:269 kernel/sched/clock.c:306) [ 2.600690][ T1] lock_acquire (kernel/locking/lockdep.c:5754) [ 2.600690][ T1] ? __kmem_cache_reserve_resize (mm/slub.c:5410) [ 2.600690][ T1] ? trace_hardirqs_on (kernel/trace/trace_preemptirq.c:63) [ 2.600690][ T1] ? get_partial (mm/slub.c:2804) [ 2.600690][ T1] ? __kmem_cache_reserve_resize (mm/slub.c:5410) [ 2.600690][ T1] _raw_spin_lock_irqsave (include/linux/spinlock_api_smp.h:110 kernel/locking/spinlock.c:162) [ 2.600690][ T1] ? __kmem_cache_reserve_resize (mm/slub.c:5410) [ 2.600690][ T1] __kmem_cache_reserve_resize (mm/slub.c:5410) [ 2.600690][ T1] ? __kmalloc_cache_noprof (mm/slub.c:4165) [ 2.600690][ T1] ? __kmalloc_cache_noprof (include/trace/events/kmem.h:54) [ 2.600690][ T1] ? kmem_cache_reserve_create (include/linux/slab.h:? mm/slub.c:5486) [ 2.600690][ T1] kmem_cache_reserve_create (mm/slub.c:5494) [ 2.600690][ T1] mempool_create_slab_pool (mm/mempool.c:267 mm/mempool.c:324) [ 2.600690][ T1] dmaengine_init_unmap_pool (drivers/dma/dmaengine.c:1409) [ 2.600690][ T1] dma_bus_init (drivers/dma/dmaengine.c:1592) [ 2.600690][ T1] do_one_initcall (init/main.c:1267) [ 2.600690][ T1] ? dma_channel_table_init (drivers/dma/dmaengine.c:1589) [ 2.600690][ T1] ? kvm_sched_clock_read (arch/x86/kernel/kvmclock.c:91) [ 2.600690][ T1] ? sched_clock_noinstr (arch/x86/kernel/tsc.c:266) [ 2.600690][ T1] ? local_clock_noinstr (kernel/sched/clock.c:269 kernel/sched/clock.c:306) [ 2.600690][ T1] ? local_clock (arch/x86/include/asm/preempt.h:94 kernel/sched/clock.c:316) [ 2.600690][ T1] ? kvm_sched_clock_read (arch/x86/kernel/kvmclock.c:91) [ 2.600690][ T1] ? local_clock_noinstr (kernel/sched/clock.c:269 kernel/sched/clock.c:306) [ 2.600690][ T1] ? rcu_read_lock_any_held (kernel/rcu/update.c:386) [ 2.600690][ T1] ? __lock_acquire (kernel/locking/lockdep.c:3762) [ 2.600690][ T1] ? post_alloc_hook (include/linux/page_owner.h:?) [ 2.600690][ T1] ? prep_new_page (mm/page_alloc.c:1478) [ 2.600690][ T1] ? get_page_from_freelist (mm/page_alloc.c:3402) [ 2.600690][ T1] ? kvm_sched_clock_read (arch/x86/kernel/kvmclock.c:91) [ 2.600690][ T1] ? sched_clock_noinstr (arch/x86/kernel/tsc.c:266) [ 2.600690][ T1] ? local_clock_noinstr (kernel/sched/clock.c:269 kernel/sched/clock.c:306) [ 2.600690][ T1] ? local_clock (arch/x86/include/asm/preempt.h:94 kernel/sched/clock.c:316) [ 2.600690][ T1] ? next_arg (lib/cmdline.c:273) [ 2.600690][ T1] ? do_initcall_level (init/main.c:1313) [ 2.600690][ T1] ? parse_args (kernel/params.c:153) [ 2.600690][ T1] do_initcall_level (init/main.c:1328) [ 2.600690][ T1] ? rest_init (init/main.c:1459) [ 2.600690][ T1] do_initcalls (init/main.c:1342) [ 2.600690][ T1] ? rest_init (init/main.c:1459) [ 2.600690][ T1] do_basic_setup (init/main.c:1365) [ 2.600690][ T1] kernel_init_freeable (init/main.c:1582) [ 2.600690][ T1] kernel_init (init/main.c:1469) [ 2.600690][ T1] ret_from_fork (arch/x86/kernel/process.c:153) [ 2.600690][ T1] ret_from_fork_asm (arch/x86/entry/entry_32.S:737) [ 2.600690][ T1] entry_INT80_32 (arch/x86/entry/entry_32.S:944) The kernel config and materials to reproduce are available at: https://download.01.org/0day-ci/archive/20240614/202406141514.6a6cf495-lkp@xxxxxxxxx -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki