On 2023/10/26 13:49, kernel test robot wrote: > > > Hello, > > kernel test robot noticed "WARNING:at_mm/slub.c:#___slab_alloc" on: > > commit: b34342e2732b0dc92b29d6807c5314e2e5e0c27c ("[RFC PATCH v3 6/7] slub: Delay freezing of partial slabs") > url: https://github.com/intel-lab-lkp/linux/commits/chengming-zhou-linux-dev/slub-Keep-track-of-whether-slub-is-on-the-per-node-partial-list/20231024-173519 > base: git://git.kernel.org/cgit/linux/kernel/git/vbabka/slab.git for-next > patch link: https://lore.kernel.org/all/20231024093345.3676493-7-chengming.zhou@xxxxxxxxx/ > patch subject: [RFC PATCH v3 6/7] slub: Delay freezing of partial slabs > > in testcase: rcutorture > version: > with following parameters: > > runtime: 300s > test: default > torture_type: rcu > > > > compiler: gcc-12 > test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G > > (please refer to attached dmesg/kmsg for entire log/backtrace) > > > +------------------------------------------------+------------+------------+ > | | e87d1d9973 | b34342e273 | > +------------------------------------------------+------------+------------+ > | boot_successes | 15 | 0 | > | boot_failures | 0 | 15 | > | WARNING:at_mm/slub.c:#___slab_alloc | 0 | 15 | > | RIP:___slab_alloc | 0 | 15 | > +------------------------------------------------+------------+------------+ > > > 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/202310261032.b4590eb0-oliver.sang@xxxxxxxxx > > > [ 4.907500][ T1] ------------[ cut here ]------------ > [ 4.908232][ T1] WARNING: CPU: 0 PID: 1 at mm/slub.c:577 ___slab_alloc (mm/slub.c:577 mm/slub.c:3033 mm/slub.c:3205) > [ 4.909242][ T1] Modules linked in: > [ 4.909739][ T1] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 6.6.0-rc5-00013-gb34342e2732b #1 > [ 4.910746][ T1] RIP: 0010:___slab_alloc (mm/slub.c:577 mm/slub.c:3033 mm/slub.c:3205) The warning is triggered by "lockdep_assert_irqs_disabled()" in __slab_update_freelist(), which is called in the new introduced freeze_slab(). We should fix it by using "slab_update_freelist()" in freeze_slab() instead, which will disable the interrupts correctly. Thanks!