lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1545067657.185366.433.camel@acm.org>
Date:   Mon, 17 Dec 2018 09:27:37 -0800
From:   Bart Van Assche <bvanassche@....org>
To:     kernel test robot <rong.a.chen@...el.com>
Cc:     Peter Zijlstra <peterz@...radead.org>,
        Waiman Long <longman@...hat.com>,
        Johannes Berg <johannes@...solutions.net>,
        LKML <linux-kernel@...r.kernel.org>,
        Bart Van Assche <bart.vanassche@...disk.com>, lkp@...org
Subject: Re: [LKP] [locking/lockdep] 15693f040b:
 WARNING:at_kernel/locking/lockdep.c:#lockdep_free_key_range

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.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ