Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/pcid
commit fe76e5cf4cffaf677fdf425ddb0f711f0b754081
Author: Andy Lutomirski <luto(a)kernel.org>
AuthorDate: Tue Mar 22 15:22:30 2016 -0700
Commit: Andy Lutomirski <luto(a)kernel.org>
CommitDate: Tue Feb 7 10:39:05 2017 -0800
x86/mm: Hold a spinlock when propagating TLB flushes
We currently allow unlimited concurrency when flushing TLB entries
associated with an mm_struct. This isn't a problem right now, but,
when we add ASID support, this would make the bookkeeping very
messy.
This patch adds a per-mm spinlock that is held only when propagating
TLB flushes for that mm. This means that there will be a total
order of flush events for a given mm, which means that we will be
able to cleanly associate generation numbers with an mm.
This should have negligible performance impact: TLB flush
propagation is effectively serialized by the synchronous cross-CPU
function calls even if multiple CPUs try to do propagate_tlb_flush()
concurrently.
Signed-off-by: Andy Lutomirski <luto(a)kernel.org>
+-------------------------------------------------+------------+------------+------------+
| | e3b2e8485e | fe76e5cf4c | 0eef6efbfd
|
+-------------------------------------------------+------------+------------+------------+
| boot_successes | 121 | 0 | 0
|
| boot_failures | 1 | 30 | 13
|
| BUG:kernel_reboot-without-warning_in_test_stage | 1 | |
|
| BUG:spinlock_bad_magic_on_CPU | 0 | 30 | 13
|
+-------------------------------------------------+------------+------------+------------+
[ 4.645752] Write protecting the kernel read-only data: 10240k
[ 4.647334] Freeing unused kernel memory: 1040K
[ 4.657208] Freeing unused kernel memory: 1492K
[ 4.658433] BUG: spinlock bad magic on CPU#0, init/1
[ 4.658972] lock: 0xffff88001dd52300, .magic: 00000000, .owner: <none>/-1,
.owner_cpu: 0
[ 4.659814] CPU: 0 PID: 1 Comm: init Not tainted 4.10.0-rc7-00006-gfe76e5c #1
[ 4.660628] Call Trace:
[ 4.660896] dump_stack+0x65/0x8c
[ 4.661243] spin_dump+0x86/0x8b
[ 4.661580] spin_bug+0x26/0x28
git bisect start 0eef6efbfddb6e2f300efd31dea7570feb23d599
d5adbfcd5f7bcc6fa58a41c5c5ada0e5c826ce2c --
git bisect good eef8be18620ecbf8bf6a9a40642751f4176ab8a2 # 08:57 27+ 0 Merge
'linux-review/Christophe-JAILLET/gdrom-Add-missing-error-code/20170207-060516'
into devel-catchup-201702080604
git bisect good b2d45dac2b2d7e935006116fdd4459a1e6b2af27 # 09:10 27+ 0 Merge
'linux-review/Kinglong-Mee/Some-cleanups-and-updates-for-sunrpc/20170207-232119'
into devel-catchup-201702080604
git bisect bad f4490293f3b2f7e0b47fd54ad265bc77750b5b35 # 09:23 3- 27 Merge
'dax/idr-4.11' into devel-catchup-201702080604
git bisect good 8a5119225c65ba66b6cb88f181d54f727e4fbf84 # 09:40 27+ 1 Merge
'linux-review/Paolo-Abeni/brcmfmac-clear-skb-head-state-on-xmit/20170208-020119'
into devel-catchup-201702080604
git bisect good ad99dc24caa9c29297b5a932f85317882403441b # 09:51 27+ 1 Merge
'linux-review/Guennadi-Liakhovetski/uvcvideo-asynchronous-control-reporting/20170208-023929'
into devel-catchup-201702080604
git bisect bad ac91d1142c41fdbb2c4276fea777bb2e32cae20d # 09:59 1- 4 Merge
'fdmanana/integration-4.11' into devel-catchup-201702080604
git bisect bad 07ed875283a3e721bf45828c4c416b808a632a3c # 10:06 4- 13 Merge
'linux-review/Leon-Romanovsky/RDMA-Remove-kernel-private-defines-and-reference-to-header-from-UAPI/20170208-024811'
into devel-catchup-201702080604
git bisect bad b7acfe0aab4b498a69e295d573638ca5f639b5f0 # 10:16 12- 27 Merge
'luto/x86/pcid' into devel-catchup-201702080604
git bisect good 36f503f3cf69dd997c1936352be2a4e442e70811 # 10:28 29+ 3 x86/mm:
Make __native_flush_tlb safe against asynchronous PCID changes
git bisect bad fe76e5cf4cffaf677fdf425ddb0f711f0b754081 # 10:38 4- 10 x86/mm:
Hold a spinlock when propagating TLB flushes
git bisect good e3b2e8485e6e02adaeec207807864e25f93693dd # 10:49 30+ 1 x86/mm:
Factor out remote TLB flushing
# first bad commit: [fe76e5cf4cffaf677fdf425ddb0f711f0b754081] x86/mm: Hold a spinlock
when propagating TLB flushes
git bisect good e3b2e8485e6e02adaeec207807864e25f93693dd # 10:54 91+ 1 x86/mm:
Factor out remote TLB flushing
# extra tests with CONFIG_DEBUG_INFO_REDUCED
git bisect bad fe76e5cf4cffaf677fdf425ddb0f711f0b754081 # 11:04 1- 2 x86/mm:
Hold a spinlock when propagating TLB flushes
# extra tests on HEAD of linux-devel/devel-catchup-201702080604
git bisect bad 0eef6efbfddb6e2f300efd31dea7570feb23d599 # 11:04 0- 13 0day
head guard for 'devel-catchup-201702080604'
# extra tests on tree/branch luto/x86/pcid
# extra tests on tree/branch linus/master
git bisect good 926af6273fc683cd98cd0ce7bf0d04a02eed6742 # 11:24 92+ 3 Merge
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
# extra tests on tree/branch linux-next/master
git bisect good eb60f01302b24ce93108414e2c4c673cb7cd6e05 # 11:37 86+ 3 Add
linux-next specific files for 20170207
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/lkp Intel Corporation