[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20170721023319.GE4273@yexl-desktop>
Date: Fri, 21 Jul 2017 10:33:19 +0800
From: kernel test robot <fengguang.wu@...el.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: linux-kernel@...r.kernel.org, LKP <lkp@...org>
Subject: [lkp-robot] [bisect done] fc8dffd379 [ 18.746325] WARNING:
possible recursive locking detected
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
commit fc8dffd379ca5620664336eb895a426b42847558
Author: Thomas Gleixner <tglx@...utronix.de>
AuthorDate: Wed May 24 10:15:40 2017 +0200
Commit: Thomas Gleixner <tglx@...utronix.de>
CommitDate: Fri May 26 10:10:46 2017 +0200
cpu/hotplug: Convert hotplug locking to percpu rwsem
There are no more (known) nested calls to get_online_cpus() and all
observed lock ordering problems have been addressed.
Replace the magic nested 'rwsem' hackery with a percpu-rwsem.
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
Tested-by: Paul E. McKenney <paulmck@...ux.vnet.ibm.com>
Acked-by: Ingo Molnar <mingo@...nel.org>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: Sebastian Siewior <bigeasy@...utronix.de>
Cc: Steven Rostedt <rostedt@...dmis.org>
Link: http://lkml.kernel.org/r/20170524081549.447014063@linutronix.de
5d5dbc4ef2 s390: Prevent hotplug rwsem recursion
fc8dffd379 cpu/hotplug: Convert hotplug locking to percpu rwsem
beaec533fc llist: clang: introduce member_address_is_nonnull()
f80addb9cf Add linux-next specific files for 20170720
+------------------------------------------------+------------+------------+------------+---------------+
| | 5d5dbc4ef2 | fc8dffd379 | beaec533fc | next-20170720 |
+------------------------------------------------+------------+------------+------------+---------------+
| boot_successes | 34 | 0 | 0 | 0 |
| boot_failures | 1 | 15 | 17 | 13 |
| INFO:rcu_sched_detected_stalls_on_CPUs/tasks | 1 | | | |
| WARNING:possible_recursive_locking_detected | 0 | 15 | 17 | 13 |
| INFO:rcu_sched_self-detected_stall_on_CPU | 0 | 1 | | |
| IP-Config:Auto-configuration_of_network_failed | 0 | 0 | 3 | 2 |
+------------------------------------------------+------------+------------+------------+---------------+
[ 18.743003] bnx2fc: QLogic FCoE Driver bnx2fc v2.10.3 (October 15, 2015)
[ 18.744765]
[ 18.744765]
[ 18.745118] ============================================
[ 18.745118] ============================================
[ 18.746325] WARNING: possible recursive locking detected
[ 18.746325] WARNING: possible recursive locking detected
[ 18.747556] 4.12.0-rc2-00029-gfc8dffd #1 Not tainted
[ 18.747556] 4.12.0-rc2-00029-gfc8dffd #1 Not tainted
[ 18.748706] --------------------------------------------
[ 18.748706] --------------------------------------------
[ 18.749893] swapper/0/1 is trying to acquire lock:
[ 18.749893] swapper/0/1 is trying to acquire lock:
[ 18.750964] (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff8109bb95>] __cpuhp_setup_state+0x28/0x59
[ 18.750964] (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff8109bb95>] __cpuhp_setup_state+0x28/0x59
[ 18.753045]
[ 18.753045] but task is already holding lock:
[ 18.753045]
[ 18.753045] but task is already holding lock:
[ 18.754364] (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff82ae56ba>] bnx2fc_mod_init+0x202/0x354
[ 18.754364] (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff82ae56ba>] bnx2fc_mod_init+0x202/0x354
[ 18.756437]
[ 18.756437] other info that might help us debug this:
[ 18.756437]
[ 18.756437] other info that might help us debug this:
[ 18.757891] Possible unsafe locking scenario:
[ 18.757891]
[ 18.757891] Possible unsafe locking scenario:
[ 18.757891]
[ 18.759210] CPU0
[ 18.759210] CPU0
[ 18.759766] ----
[ 18.759766] ----
[ 18.760331] lock(cpu_hotplug_lock.rw_sem);
[ 18.760331] lock(cpu_hotplug_lock.rw_sem);
[ 18.761323] lock(cpu_hotplug_lock.rw_sem);
[ 18.761323] lock(cpu_hotplug_lock.rw_sem);
[ 18.762330]
[ 18.762330] *** DEADLOCK ***
[ 18.762330]
[ 18.762330]
[ 18.762330] *** DEADLOCK ***
[ 18.762330]
[ 18.763660] May be due to missing lock nesting notation
[ 18.763660]
[ 18.763660] May be due to missing lock nesting notation
[ 18.763660]
[ 18.765173] 1 lock held by swapper/0/1:
[ 18.765173] 1 lock held by swapper/0/1:
[ 18.766038] #0: (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff82ae56ba>] bnx2fc_mod_init+0x202/0x354
[ 18.766038] #0: (cpu_hotplug_lock.rw_sem){.+.+.+}, at: [<ffffffff82ae56ba>] bnx2fc_mod_init+0x202/0x354
[ 18.768189]
[ 18.768189] stack backtrace:
[ 18.768189]
[ 18.768189] stack backtrace:
[ 18.769165] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.12.0-rc2-00029-gfc8dffd #1
[ 18.769165] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.12.0-rc2-00029-gfc8dffd #1
[ 18.770853] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.9.3-20161025_171302-gandalf 04/01/2014
[ 18.770853] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.9.3-20161025_171302-gandalf 04/01/2014
[ 18.773179] Call Trace:
[ 18.773179] Call Trace:
[ 18.773752] dump_stack+0xb9/0x10b
[ 18.773752] dump_stack+0xb9/0x10b
[ 18.774515] validate_chain+0x6cc/0x817
[ 18.774515] validate_chain+0x6cc/0x817
[ 18.775543] __lock_acquire+0x60f/0x6f6
[ 18.775543] __lock_acquire+0x60f/0x6f6
[ 18.776444] lock_acquire+0x1a9/0x1fd
[ 18.776444] lock_acquire+0x1a9/0x1fd
[ 18.777307] ? __cpuhp_setup_state+0x28/0x59
[ 18.777307] ? __cpuhp_setup_state+0x28/0x59
[ 18.778269] cpus_read_lock+0x3d/0x7b
[ 18.778269] cpus_read_lock+0x3d/0x7b
[ 18.779112] ? __cpuhp_setup_state+0x28/0x59
[ 18.779112] ? __cpuhp_setup_state+0x28/0x59
[ 18.780072] __cpuhp_setup_state+0x28/0x59
[ 18.780072] __cpuhp_setup_state+0x28/0x59
[ 18.781014] ? bnx2fc_percpu_thread_create+0x68/0x68
[ 18.781014] ? bnx2fc_percpu_thread_create+0x68/0x68
[ 18.782162] bnx2fc_mod_init+0x25e/0x354
[ 18.782162] bnx2fc_mod_init+0x25e/0x354
[ 18.783073] ? fcoe_sysfs_setup+0x2b/0x2b
[ 18.783073] ? fcoe_sysfs_setup+0x2b/0x2b
[ 18.783990] ? do_early_param+0x94/0x94
[ 18.783990] ? do_early_param+0x94/0x94
[ 18.784849] do_one_initcall+0x8c/0x156
[ 18.784849] do_one_initcall+0x8c/0x156
[ 18.785735] ? do_early_param+0x94/0x94
[ 18.785735] ? do_early_param+0x94/0x94
[ 18.786617] kernel_init_freeable+0x11c/0x1ab
[ 18.786617] kernel_init_freeable+0x11c/0x1ab
[ 18.787622] ? rest_init+0x136/0x136
[ 18.787622] ? rest_init+0x136/0x136
[ 18.788440] kernel_init+0xe/0xf0
[ 18.788440] kernel_init+0xe/0xf0
[ 18.789206] ret_from_fork+0x31/0x40
[ 18.789206] ret_from_fork+0x31/0x40
[ 18.790181] Loading Adaptec I2O RAID: Version 2.4 Build 5go
[ 18.790181] Loading Adaptec I2O RAID: Version 2.4 Build 5go
[ 18.791507] Detecting Adaptec I2O RAID controllers...
[ 18.791507] Detecting Adaptec I2O RAID controllers...
[ 18.792874] isci: Intel(R) C600 SAS Controller Driver - version 1.2.0
# HH:MM RESULT GOOD BAD GOOD_BUT_DIRTY DIRTY_NOT_BAD
git bisect start 5771a8c08880cdca3bfb4a3fc6d309d6bba20877 v4.12 --
git bisect bad 16ffc4c39415e62c1d027d1bc59ee28e267d59f2 # 12:26 B 0 11 23 0 Merge tag 'kbuild-misc-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
git bisect bad e24dd9ee5399747b71c1d982a484fc7601795f31 # 12:41 B 0 11 23 0 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
git bisect good 3ad918e65d6926490c8f18a157cea25bf29ecd3a # 12:59 G 11 0 0 0 Merge branch 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad b39de277b02ffd8e3dccb01e9159bd45cb07b95d # 13:09 B 0 11 23 0 Merge tag 'spi-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi
git bisect bad 974668417b74ec5f68df2411f53b3d3812565059 # 13:37 B 0 11 27 4 Merge tag 'driver-core-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
git bisect bad 362f6729cbb1d6bbab59e069f19441b0622ff7ec # 13:53 B 0 11 23 0 Merge tag 'usb-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
git bisect bad 9a9594efe54324e9124add7e7b1e7bdb6d0b08a3 # 14:35 B 0 4 31 15 Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect good 1ba143a5216fb148211160a0ecc1f8d3f92f06bb # 15:24 G 11 0 0 2 perf/x86/intel: Drop get_online_cpus() in intel_snb_check_microcode()
git bisect good 5d5dbc4ef27e72104dea6102e4d1a1bf5a8ed971 # 18:37 G 11 0 0 1 s390: Prevent hotplug rwsem recursion
git bisect bad e5aeee51f6b4fb22e851105ee6d8ad211c40a214 # 21:19 B 0 11 27 4 perf/core: Don't release cred_guard_mutex if not taken
git bisect bad 62ec05dd71b19f5be890a1992227cc7b2ac0adc4 # 22:04 B 0 11 23 0 sched: Provide is_percpu_thread() helper
git bisect bad fc8dffd379ca5620664336eb895a426b42847558 # 22:51 B 0 11 23 0 cpu/hotplug: Convert hotplug locking to percpu rwsem
# first bad commit: [fc8dffd379ca5620664336eb895a426b42847558] cpu/hotplug: Convert hotplug locking to percpu rwsem
git bisect good 5d5dbc4ef27e72104dea6102e4d1a1bf5a8ed971 # 23:56 G 31 0 0 1 s390: Prevent hotplug rwsem recursion
# extra tests with CONFIG_DEBUG_INFO_REDUCED
git bisect bad fc8dffd379ca5620664336eb895a426b42847558 # 01:02 B 0 11 23 0 cpu/hotplug: Convert hotplug locking to percpu rwsem
# extra tests on HEAD of linux-devel/devel-spot-201707192359
git bisect bad 8da9222f2790123a9dc7ed9e3abc5c1cb043804b # 01:03 B 0 13 28 0 0day head guard for 'devel-spot-201707192359'
# extra tests on tree/branch linus/master
git bisect bad beaec533fc2701a28a4d667f67c9f59c6e4e0d13 # 01:19 B 0 11 23 0 llist: clang: introduce member_address_is_nonnull()
# extra tests on tree/branch linux-next/master
git bisect bad f80addb9cf6c71f1eb8b010dc6a8bf15bb9007e6 # 01:45 B 0 11 23 0 Add linux-next specific files for 20170720
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/lkp Intel Corporation
Download attachment "dmesg-yocto-lkp-hsw01-100:20170720225112:x86_64-randconfig-s5-07201049:4.12.0-rc2-00029-gfc8dffd:1.gz" of type "application/gzip" (18907 bytes)
Download attachment "dmesg-vm-lkp-hsw01-1G-7:20170720181004:x86_64-randconfig-s5-07201049:4.12.0-rc2-00028-g5d5dbc4:1.gz" of type "application/gzip" (22333 bytes)
View attachment "reproduce-yocto-lkp-hsw01-100:20170720225112:x86_64-randconfig-s5-07201049:4.12.0-rc2-00029-gfc8dffd:1" of type "text/plain" (897 bytes)
View attachment "config-4.12.0-rc2-00029-gfc8dffd" of type "text/plain" (109004 bytes)
Powered by blists - more mailing lists