On Mon, 2018-12-17 at 16:41 +0800, kernel test robot wrote: > FYI, we noticed the following commit (built with gcc-4.9): > > commit: 15693f040b149ffff598cc048c2697b258d3901c ("locking/lockdep: Free lock > classes that are no longer in use") > https://github.com/bvanassche/linux for-next > > in testcase: locktorture > with following parameters: > > runtime: 300s > test: cpuhotplug > > test-description: This torture test consists of creating a number of kernel > threads which acquire the lock and hold it for specific amount of time, thus > simulating different critical region > behaviors. > test-url: https://www.kernel.org/doc/Documentation/locking/locktorture.txt > > > on test machine: qemu-system-i386 -enable-kvm -cpu SandyBridge -smp 2 -m 512M > > caused below changes (please refer to attached dmesg/kmsg for entire > log/backtrace): > > > +-------------------------------------------------------------+------------+------------+ > > | b7001c6cce | > > 15693f040b | > > +-------------------------------------------------------------+------------+------------+ > > boot_successes | 0 | > > 0 | > > boot_failures | 394 | > > 396 | > > WARNING:at_lib/debugobjects.c:#__debug_object_init | 394 | > > 396 | > > EIP:__debug_object_init | 394 | > > 396 | > > WARNING:possible_circular_locking_dependency_detected | 370 | > > 375 | > > WARNING:at_kernel/locking/lockdep.c:#lock_downgrade | 145 | > > 159 | > > EIP:lock_downgrade | 145 | > > 159 | > > BUG:soft_lockup-CPU##stuck_for#s | 24 | > > 21 | > > EIP:thread_lookup_test | 12 | > > 9 | > > Kernel_panic-not_syncing:softlockup:hung_tasks | 24 | > > 21 | > > EIP:memcmp | 3 | > > 3 | > > EIP:threadfunc | 4 | > > 2 | > > EIP:lock_acquire | 3 | > > 1 | > > EIP:lock_is_held_type | 2 | > > 2 | > > WARNING:at_net/sched/sch_generic.c:#dev_watchdog | 1 | > > | > > EIP:dev_watchdog | 1 | > > | > > WARNING:at_kernel/locking/lockdep.c:#lockdep_free_key_range | 0 | > > 22 | > > EIP:lockdep_free_key_range | 0 | > > 22 | > > EIP:lock_release | 0 | > > 2 | > > EIP:rht_deferred_worker | 0 | > > 2 | > > +-------------------------------------------------------------+------------+------------+
The WARNING:at_kernel/locking/lockdep.c:#lockdep_free_key_range warnings were caused by the following code: pf = get_pending_free_lock(&flags); if (WARN_ON_ONCE(!pf)) return; Before this report was produced I had already pushed out a new version of my lockdep patch series to the for-next branch of my github repository in which that code had been modified into the following: pf = get_pending_free_lock(&flags); if (!pf) return; Since the above report refers to a WARN_ON_ONCE() statement that has been removed, I think that this report can be ignored. Bart.