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>] [day] [month] [year] [list]
Message-ID: <20140625093950.GA611@localhost>
Date:	Wed, 25 Jun 2014 17:39:50 +0800
From:	Fengguang Wu <fengguang.wu@...el.com>
To:	Waiman Long <Waiman.Long@...com>
Cc:	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Jet Chen <jet.chen@...el.com>,
	Yuanhan Liu <yuanhan.liu@...el.com>, LKP <lkp@...org>,
	linux-kernel@...r.kernel.org
Subject: [lockdep] BUG: 9 unexpected failures (out of 253) - debugging
 disabled!

Greetings,

0day kernel testing robot got the below dmesg and the first bad commit is

git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git locking/core
commit b7e4888bad0c84db587a2beae72dcf1c40ec0e52
Author:     Waiman Long <Waiman.Long@...com>
AuthorDate: Mon Jun 23 14:25:00 2014 -0400
Commit:     Peter Zijlstra <a.p.zijlstra@...llo.nl>
CommitDate: Tue Jun 24 16:39:40 2014 +0200

    lockdep: restrict the use of recursive read_lock with qrwlock
    
    Unlike the original unfair rwlock implementation, queued rwlock
    will grant lock according to the chronological sequence of the lock
    requests except when the lock requester is in the interrupt context.
    Consequently, recursive read_lock calls will now hang the process if
    there is a write_lock call somewhere in between the read_lock calls.
    
    This patch updates the lockdep implementation to look for recursive
    read_lock calls when queued rwlock is being used. A new read state (3)
    is used to mark those read_lock call that cannot be recursively called
    except in the interrupt context. The new read state does exhaust the
    2 bits available in held_lock:read bit field. The addition of any new
    read state in the future may require a redesign of how all those bits
    are squeezed together in the held_lock structure.
    
    Cc: Scott J Norton <scott.norton@...com>
    Cc: Ingo Molnar <mingo@...nel.org>
    Signed-off-by: Waiman Long <Waiman.Long@...com>
    Signed-off-by: Peter Zijlstra <peterz@...radead.org>
    Link: http://lkml.kernel.org/r/1403547900-40658-2-git-send-email-Waiman.Long@hp.com

+----------------------------------------------------+------------+------------+------------+
|                                                    | 6cc620bc8e | b7e4888bad | 5fe00a37f7 |
+----------------------------------------------------+------------+------------+------------+
| boot_successes                                     | 60         | 0          | 0          |
| boot_failures                                      | 0          | 20         | 13         |
| BUG:unexpected_failures(out_of)-debugging_disabled | 0          | 20         | 13         |
+----------------------------------------------------+------------+------------+------------+

[    0.000000]   --------------------------------------------------------------------------
[    0.000000]                      A-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c121fe62 c15a01b7 c15a01aa 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c121fe62>] locking_selftest+0xd4/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]                  A-B-B-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c121feeb c15a01b7 c15a01bd 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c121feeb>] locking_selftest+0x15d/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]              A-B-B-C-C-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c121ff74 c15a01b7 c15a01ce 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c121ff74>] locking_selftest+0x1e6/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]              A-B-C-A-B-C deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c121fffd c15a01b7 c15a01e3 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c121fffd>] locking_selftest+0x26f/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]          A-B-B-C-C-D-D-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c1220086 c15a01b7 c15a01f8 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c1220086>] locking_selftest+0x2f8/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]          A-B-C-D-B-D-D-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c122010f c15a01b7 c15a0211 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c122010f>] locking_selftest+0x381/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]          A-B-C-D-B-C-D-A deadlock:  ok  |  ok  |FAILED|
[    0.000000] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00024-gb7e4888 #12
[    0.000000] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[    0.000000]  00000000 00000000 c1633f8c c141223b 00000001 c1633fb4 c141248b c159ffe8
[    0.000000]  c140fce6 00000000 00000004 00000002 c16bf390 00020800 c1844800 c1633fc8
[    0.000000]  c1220198 c15a01b7 c15a022a 00000780 c1633fe8 c1688a0d 000000ea ffffffff
[    0.000000] Call Trace:
[    0.000000]  [<c141223b>] dump_stack+0x48/0x60
[    0.000000]  [<c141248b>] dotest+0x58/0x4bc
[    0.000000]  [<c140fce6>] ? printk+0x38/0x3a
[    0.000000]  [<c1220198>] locking_selftest+0x40a/0x1ddb
[    0.000000]  [<c1688a0d>] start_kernel+0x2e5/0x3a1
[    0.000000]  [<c16884c5>] ? set_init_arg+0x49/0x49
[    0.000000]  [<c16882af>] i386_start_kernel+0x79/0x7d
[    0.000000]   ok  |  ok  |  ok  |
[    0.000000]                     double unlock:  ok  |  ok  |  ok  |  ok  |  ok  |  ok  |
[    0.000000]                   initialize held:  ok  |  ok  |  ok  |  ok  |  ok  |  ok  |

git bisect start 5fe00a37f7eb81f306abdffbf4d7093da51b8ccc a497c3ba1d97fc69c1e78e7b96435ba8c2cb42ee --
git bisect  bad f07035a109af7964e8446cb7ffc1721a1c2ce43c  # 23:40      0-     20  Merge 'peterz-queue/locking/core' into devel-lkp-hsx01-i386-201406242318
git bisect good 4dda92923e85460ff9299b486176f09cc25ca104  # 23:56     20+      0  Merge 'amirv/for-net' into devel-lkp-hsx01-i386-201406242318
git bisect good 5054910c90f25564062e9a1c78e4d37a51077955  # 00:18     20+      0  Merge 'amirv/for-netdev' into devel-lkp-hsx01-i386-201406242318
git bisect good 88f2b4c15e561bb5c28709d666364f273bf54b98  # 00:51     20+      0  rtmutex: Simplify rtmutex_slowtrylock()
git bisect good a57594a13a446d1a6ab1dcd48339f799ce586843  # 01:01     20+      0  rtmutex: Clarify the boost/deboost part
git bisect good 6cc620bc8e9b521e61f04eefbec0c41c01fb03b9  # 01:09     20+      0  rtmutex: Make the rtmutex tester depend on BROKEN
git bisect  bad b7e4888bad0c84db587a2beae72dcf1c40ec0e52  # 01:13      0-     20  lockdep: restrict the use of recursive read_lock with qrwlock
# first bad commit: [b7e4888bad0c84db587a2beae72dcf1c40ec0e52] lockdep: restrict the use of recursive read_lock with qrwlock
git bisect good 6cc620bc8e9b521e61f04eefbec0c41c01fb03b9  # 01:16     60+      0  rtmutex: Make the rtmutex tester depend on BROKEN
git bisect  bad 5fe00a37f7eb81f306abdffbf4d7093da51b8ccc  # 01:16      0-     13  0day head guard for 'devel-lkp-hsx01-i386-201406242318'
git bisect good 8b8f5d9715845f9ae2b89ce406e71877965b29ca  # 01:20     60+      0  Merge tag 'compress-3.16-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
git bisect good 3ab63dc6b2912b76632e34889ec26355096aaead  # 01:21     60+     63  Add linux-next specific files for 20140624


This script may reproduce the error.

-----------------------------------------------------------------------------
#!/bin/bash

kernel=$1
initrd=quantal-core-i386.cgz

wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd

kvm=(
	qemu-system-x86_64 -cpu kvm64 -enable-kvm 
	-kernel $kernel
	-initrd $initrd
	-smp 2
	-m 256M
	-net nic,vlan=0,macaddr=00:00:00:00:00:00,model=virtio
	-net user,vlan=0
	-net nic,vlan=1,model=e1000
	-net user,vlan=1
	-boot order=nc
	-no-reboot
	-watchdog i6300esb
	-serial stdio
	-display none
	-monitor null
)

append=(
	debug
	sched_debug
	apic=debug
	ignore_loglevel
	sysrq_always_enabled
	panic=10
	prompt_ramdisk=0
	earlyprintk=ttyS0,115200
	console=ttyS0,115200
	console=tty0
	vga=normal
	root=/dev/ram0
	rw
)

"${kvm[@]}" --append "${append[*]}"
-----------------------------------------------------------------------------

Thanks,
Fengguang

View attachment "dmesg-quantal-ivb42-96:20140625011304:i386-randconfig-ha3-0624:3.16.0-rc1-00024-gb7e4888:12" of type "text/plain" (58297 bytes)

Download attachment "i386-randconfig-ha3-0624-5fe00a37f7eb81f306abdffbf4d7093da51b8ccc-BUG:----unexpected-failures----of------debugging-96781.log" of type "application/octet-stream" (48912 bytes)

View attachment "config-3.16.0-rc1-00024-gb7e4888" of type "text/plain" (78597 bytes)

_______________________________________________
LKP mailing list
LKP@...ux.intel.com

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ