On 8/25/24 11:25, kernel test robot wrote: > > > Hello, > > kernel test robot noticed "WARNING:at_mm/slab_common.c:#kmem_cache_destroy" on: > > commit: 2377a7d90f5bb2ccc302b5fb0e6ba4c67cf24ddd ("kunit, slub: add test_kfree_rcu() and test_leak_destroy()") > https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master Hmm in slub_kunit we generally try to suppress dmesg splats in the kunit test context so guess I can do that for this warning as well. Thanks. > [test failed on linux-next/master c79c85875f1af04040fe4492ed94ce37ad729c4d] > > in testcase: kunit > version: > with following parameters: > > group: group-00 > > > > compiler: gcc-12 > test machine: 36 threads 1 sockets Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz (Cascade Lake) with 128G memory > > (please refer to attached dmesg/kmsg for entire log/backtrace) > > > > 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 <oliver.sang@xxxxxxxxx> > | Closes: https://lore.kernel.org/oe-lkp/202408251723.42f3d902-oliver.sang@xxxxxxxxx > > > kern :warn : [ 402.601850] ------------[ cut here ]------------ > kern :warn : [ 402.602683] kmem_cache_destroy TestSlub_kfree_rcu: Slab cache still has objects when called from test_leak_destroy (lib/slub_kunit.c:186) slub_kunit > kern :warn : [ 402.602700] WARNING: CPU: 0 PID: 4936 at mm/slab_common.c:528 kmem_cache_destroy (mm/slab_common.c:528 mm/slab_common.c:504) > kern :warn : [ 402.605758] Modules linked in: slub_kunit linear_ranges intel_rapl_msr intel_rapl_common skx_edac_common nfit sd_mod sg libnvdimm x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel kvm crct10dif_pclmul crc32_generic crc32_pclmul ghash_clmulni_intel sha512_ssse3 btrfs blake2b_generic xor raid6_pq libcrc32c snd_soc_avs snd_soc_hda_codec snd_hda_ext_core snd_hda_codec snd_hda_core snd_intel_dspcfg crc32c_intel rapl snd_soc_core snd_compress ahci snd_pcm libahci intel_cstate ipmi_devintf ipmi_msghandler nvme intel_uncore wmi_bmof intel_wmi_thunderbolt mxm_wmi wdat_wdt snd_timer mei_me libata nvme_core snd ioatdma mei soundcore dca wmi binfmt_misc drm fuse loop dm_mod ip_tables cts xts [last unloaded: rational_test] > kern :warn : [ 402.613823] CPU: 0 UID: 0 PID: 4936 Comm: kunit_try_catch Tainted: G B N 6.11.0-rc2-00008-g2377a7d90f5b #1 > kern :warn : [ 402.615894] Tainted: [B]=BAD_PAGE, [N]=TEST > kern :warn : [ 402.616872] Hardware name: Gigabyte Technology Co., Ltd. X299 UD4 Pro/X299 UD4 Pro-CF, BIOS F8a 04/27/2021 > kern :warn : [ 402.618338] RIP: 0010:kmem_cache_destroy (mm/slab_common.c:528 mm/slab_common.c:504) > kern :warn : [ 402.619412] Code: 8c ff c3 cc cc cc cc e8 57 e0 ab ff eb ad 48 8b 53 60 48 8b 4c 24 10 48 c7 c6 20 21 55 84 48 c7 c7 d0 b9 ee 84 e8 a9 d4 8b ff <0f> 0b e9 28 ff ff ff 66 90 90 90 90 90 90 90 90 90 90 90 90 90 90 > All code > ======== > 0: 8c ff mov %?,%edi > 2: c3 retq > 3: cc int3 > 4: cc int3 > 5: cc int3 > 6: cc int3 > 7: e8 57 e0 ab ff callq 0xffffffffffabe063 > c: eb ad jmp 0xffffffffffffffbb > e: 48 8b 53 60 mov 0x60(%rbx),%rdx > 12: 48 8b 4c 24 10 mov 0x10(%rsp),%rcx > 17: 48 c7 c6 20 21 55 84 mov $0xffffffff84552120,%rsi > 1e: 48 c7 c7 d0 b9 ee 84 mov $0xffffffff84eeb9d0,%rdi > 25: e8 a9 d4 8b ff callq 0xffffffffff8bd4d3 > 2a:* 0f 0b ud2 <-- trapping instruction > 2c: e9 28 ff ff ff jmpq 0xffffffffffffff59 > 31: 66 90 xchg %ax,%ax > 33: 90 nop > 34: 90 nop > 35: 90 nop > 36: 90 nop > 37: 90 nop > 38: 90 nop > 39: 90 nop > 3a: 90 nop > 3b: 90 nop > 3c: 90 nop > 3d: 90 nop > 3e: 90 nop > 3f: 90 nop > > Code starting with the faulting instruction > =========================================== > 0: 0f 0b ud2 > 2: e9 28 ff ff ff jmpq 0xffffffffffffff2f > 7: 66 90 xchg %ax,%ax > 9: 90 nop > a: 90 nop > b: 90 nop > c: 90 nop > d: 90 nop > e: 90 nop > f: 90 nop > 10: 90 nop > 11: 90 nop > 12: 90 nop > 13: 90 nop > 14: 90 nop > 15: 90 nop > kern :warn : [ 402.622288] RSP: 0018:ffffc9000300fd38 EFLAGS: 00010282 > kern :warn : [ 402.623454] RAX: 0000000000000000 RBX: ffff8881ac7a88c0 RCX: 0000000000000027 > kern :warn : [ 402.624796] RDX: 0000000000000027 RSI: 0000000000000004 RDI: ffff889fc3230b08 > kern :warn : [ 402.626072] RBP: 0000000000000001 R08: 0000000000000001 R09: ffffed13f8646161 > kern :warn : [ 402.627396] R10: ffff889fc3230b0b R11: 0000000000000001 R12: ffffc900009877c8 > kern :warn : [ 402.628741] R13: dffffc0000000000 R14: 0000000000000000 R15: ffffc9000300fe40 > kern :warn : [ 402.630015] FS: 0000000000000000(0000) GS:ffff889fc3200000(0000) knlGS:0000000000000000 > kern :warn : [ 402.631431] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > kern :warn : [ 402.632653] CR2: 000056455377c3b0 CR3: 000000209c662004 CR4: 00000000003706f0 > kern :warn : [ 402.633979] DR0: ffffffff8741b384 DR1: ffffffff8741b385 DR2: ffffffff8741b382 > kern :warn : [ 402.635257] DR3: ffffffff8741b383 DR6: 00000000fffe0ff0 DR7: 0000000000000600 > kern :warn : [ 402.636580] Call Trace: > kern :warn : [ 402.637518] <TASK> > kern :warn : [ 402.638397] ? __warn (kernel/panic.c:735) > kern :warn : [ 402.639368] ? kmem_cache_destroy (mm/slab_common.c:528 mm/slab_common.c:504) > kern :warn : [ 402.640432] ? report_bug (lib/bug.c:180 lib/bug.c:219) > kern :warn : [ 402.641445] ? handle_bug (arch/x86/kernel/traps.c:239) > kern :warn : [ 402.642443] ? exc_invalid_op (arch/x86/kernel/traps.c:260 (discriminator 1)) > kern :warn : [ 402.643469] ? asm_exc_invalid_op (arch/x86/include/asm/idtentry.h:621) > kern :warn : [ 402.644529] ? kmem_cache_destroy (mm/slab_common.c:528 mm/slab_common.c:504) > kern :warn : [ 402.645601] ? kmem_cache_destroy (mm/slab_common.c:528 mm/slab_common.c:504) > kern :warn : [ 402.646668] test_leak_destroy (lib/slub_kunit.c:186) slub_kunit > kern :warn : [ 402.647868] ? __pfx_test_leak_destroy (lib/slub_kunit.c:179) slub_kunit > kern :warn : [ 402.649054] ? __kunit_add_resource (lib/kunit/resource.c:44) > kern :warn : [ 402.650182] ? ktime_get_ts64 (kernel/time/timekeeping.c:195 (discriminator 4) kernel/time/timekeeping.c:395 (discriminator 4) kernel/time/timekeeping.c:403 (discriminator 4) kernel/time/timekeeping.c:983 (discriminator 4)) > kern :warn : [ 402.651224] ? test_init (lib/slub_kunit.c:196) slub_kunit > kern :warn : [ 402.652347] kunit_try_run_case (lib/kunit/test.c:398 lib/kunit/test.c:443) > kern :warn : [ 402.653447] ? __pfx_kunit_try_run_case (lib/kunit/test.c:430) > kern :warn : [ 402.654525] ? set_cpus_allowed_ptr (kernel/sched/core.c:3025) > kern :warn : [ 402.655563] ? __pfx_set_cpus_allowed_ptr (kernel/sched/core.c:3025) > kern :warn : [ 402.656629] ? __pfx_kunit_try_run_case (lib/kunit/test.c:430) > kern :warn : [ 402.657662] ? __pfx_kunit_generic_run_threadfn_adapter (lib/kunit/try-catch.c:26) > kern :warn : [ 402.658854] kunit_generic_run_threadfn_adapter (lib/kunit/try-catch.c:30) > kern :warn : [ 402.659920] kthread (kernel/kthread.c:389) > kern :warn : [ 402.660818] ? __pfx_kthread (kernel/kthread.c:342) > kern :warn : [ 402.661706] ret_from_fork (arch/x86/kernel/process.c:147) > kern :warn : [ 402.662601] ? __pfx_kthread (kernel/kthread.c:342) > kern :warn : [ 402.663457] ret_from_fork_asm (arch/x86/entry/entry_64.S:257) > kern :warn : [ 402.664326] </TASK> > kern :warn : [ 402.665053] ---[ end trace 0000000000000000 ]--- > kern :info : [ 402.666287] ok 5 test_leak_destroy > kern :info : [ 402.666297] # slub_test: pass:5 fail:0 skip:0 total:5 > kern :info : [ 402.667126] # Totals: pass:5 fail:0 skip:0 total:5 > kern :info : [ 402.668029] ok 1 slub_test > > > > The kernel config and materials to reproduce are available at: > https://download.01.org/0day-ci/archive/20240825/202408251723.42f3d902-oliver.sang@xxxxxxxxx > > >