[<prev] [next>] [day] [month] [year] [list]
Message-ID: <58f54625.Cr+ps2JPHCZYp94d%fengguang.wu@intel.com>
Date: Tue, 18 Apr 2017 06:48:05 +0800
From: kernel test robot <fengguang.wu@...el.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: LKP <lkp@...org>, linux-kernel@...r.kernel.org, wfg@...ux.intel.com
Subject: [cpu/hotplug] 6362ef376a: [ INFO: possible circular locking
dependency 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/tip/tip.git WIP.hotplug
commit 6362ef376aacbc309022ad12f08693d201cdda08
Author: Thomas Gleixner <tglx@...utronix.de>
AuthorDate: Thu Apr 13 10:50:55 2017 +0200
Commit: Thomas Gleixner <tglx@...utronix.de>
CommitDate: Mon Apr 17 16:12:27 2017 +0200
cpu/hotplug: Convert hotplug locking to percpu rwsem
There are no more (known) nested calls to get_online_cpus() so it's
possible to remove the nested call magic and convert the mutex to a
percpu-rwsem, which speeds up get/put_online_cpus() significantly for the
uncontended case.
The contended case (write locked for hotplug operations) is slow anyway, so
the slightly more expensive down_write of the percpu rwsem does not matter.
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
00ebb15e90 perf/core: Remove redundant get_online_cpus()
6362ef376a cpu/hotplug: Convert hotplug locking to percpu rwsem
6362ef376a cpu/hotplug: Convert hotplug locking to percpu rwsem
d36d99770e Merge branch 'timers/core'
+----------------------------------------------------+------------+------------+------------+------------+
| | 00ebb15e90 | 6362ef376a | 6362ef376a | d36d99770e |
+----------------------------------------------------+------------+------------+------------+------------+
| boot_successes | 35 | 0 | 0 | 0 |
| boot_failures | 0 | 13 | 13 | 11 |
| INFO:possible_circular_locking_dependency_detected | 0 | 13 | 13 | 5 |
| INFO:possible_recursive_locking_detected | 0 | 0 | 0 | 6 |
+----------------------------------------------------+------------+------------+------------+------------+
[init] Using pid_max = 32768
[init] Started watchdog process, PID is 8909
[main] Main thread is alive.
[ 23.762049]
[ 23.762311] ======================================================
[ 23.763199] [ INFO: possible circular locking dependency detected ]
[ 23.764101] 4.11.0-rc6-00237-g6362ef3 #1 Not tainted
[ 23.764847] -------------------------------------------------------
[ 23.765822] trinity-main/352 is trying to acquire lock:
[ 23.766631] (jump_label_mutex){+.+...}, at: [<ffffffffb30e9521>] jump_label_lock+0x12/0x14
[ 23.767937]
[ 23.767937] but task is already holding lock:
[ 23.768778] (perf_sched_mutex){+.+...}, at: [<ffffffffb30def80>] perf_event_alloc+0x563/0x65e
[ 23.770002]
[ 23.770002] which lock already depends on the new lock.
[ 23.770002]
[ 23.771156]
[ 23.771156] the existing dependency chain (in reverse order) is:
[ 23.772309]
[ 23.772309] -> #3 (perf_sched_mutex){+.+...}:
# HH:MM RESULT GOOD BAD GOOD_BUT_DIRTY DIRTY_NOT_BAD
git bisect start 98c5b9ad245d1735d95d66e463a44b449122581c 4f7d029b9bf009fbee76bb10c0c4351a1870d2f3 --
git bisect bad 9364dcd917be48868feab7d699b90ec8457e85b4 # 03:47 B 0 11 22 0 Merge 'net/master' into devel-catchup-201704180142
git bisect good c5de08f31b482b1ba1cf637d41921e41efe519bd # 03:56 G 11 0 0 0 Merge 'linux-review/Aneesh-Kumar-K-V/HugeTLB-migration-support-for-PPC64/20170418-011540' into devel-catchup-201704180142
git bisect good 7c90451c9c633b4c7fefc29272ba15f18e56b87c # 04:10 G 11 0 0 0 Merge 'net-next/master' into devel-catchup-201704180142
git bisect bad b5cea3442f45b5c98f45f8225978e0aa05f18da8 # 04:19 B 0 1 12 0 Merge 'tip/WIP.hotplug' into devel-catchup-201704180142
git bisect good a5cbdf693a60d5b86d4d21dfedd90f17754eb273 # 04:34 G 10 0 0 0 ACPI/processor: Fix error handling in __acpi_processor_start()
git bisect good 92b636ebde0776e579cd16d47783b8b755a4c9ea # 04:42 G 11 0 0 0 KVM/PPC/Book3S HV: Use cpuhp_setup_state_nocalls_locked()
git bisect good d21819c3b480fa0d24419f09abef05c3214ce72e # 04:59 G 11 0 0 0 kernel/hotplug: Use stop_machine_locked() in takedown_cpu()
git bisect good 862a8fda91ef0575bdd559158f6db5b6e9a70fe7 # 05:26 G 11 0 0 0 PCI: Replace the racy recursion prevention
git bisect good 00ebb15e900ebda8ee9036dddc63e3214cfad22b # 05:36 G 11 0 0 0 perf/core: Remove redundant get_online_cpus()
git bisect bad 6362ef376aacbc309022ad12f08693d201cdda08 # 05:53 B 0 2 13 0 cpu/hotplug: Convert hotplug locking to percpu rwsem
# first bad commit: [6362ef376aacbc309022ad12f08693d201cdda08] cpu/hotplug: Convert hotplug locking to percpu rwsem
git bisect good 00ebb15e900ebda8ee9036dddc63e3214cfad22b # 06:00 G 31 0 0 0 perf/core: Remove redundant get_online_cpus()
# extra tests with CONFIG_DEBUG_INFO_REDUCED
git bisect bad 6362ef376aacbc309022ad12f08693d201cdda08 # 06:09 B 0 1 12 0 cpu/hotplug: Convert hotplug locking to percpu rwsem
# extra tests on HEAD of linux-devel/devel-catchup-201704180142
git bisect bad 98c5b9ad245d1735d95d66e463a44b449122581c # 06:14 B 0 12 28 2 0day head guard for 'devel-catchup-201704180142'
# extra tests on tree/branch tip/WIP.hotplug
git bisect bad 6362ef376aacbc309022ad12f08693d201cdda08 # 06:16 B 0 13 24 0 cpu/hotplug: Convert hotplug locking to percpu rwsem
# extra tests with first bad commit reverted
git bisect good 8ccd6ba4df3ca5f8ccd7fe881165fdbf4f02b7b8 # 06:34 G 11 0 0 0 Revert "cpu/hotplug: Convert hotplug locking to percpu rwsem"
# extra tests on tree/branch tip/master
git bisect bad d36d99770e402abb6c1dc149be8602d9eb565c22 # 06:42 B 1 1 1 1 Merge branch 'timers/core'
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/lkp Intel Corporation
Download attachment "dmesg-quantal-ivb41-41:20170418055305:x86_64-randconfig-ws0-04180016:4.11.0-rc6-00237-g6362ef3:1.gz" of type "application/gzip" (20424 bytes)
View attachment "reproduce-quantal-ivb41-41:20170418055305:x86_64-randconfig-ws0-04180016:4.11.0-rc6-00237-g6362ef3:1" of type "text/plain" (888 bytes)
View attachment "config-4.11.0-rc6-00237-g6362ef3" of type "text/plain" (99742 bytes)
Powered by blists - more mailing lists