[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170801052417.GA69518@inn.lkp.intel.com>
Date: Tue, 1 Aug 2017 13:24:17 +0800
From: kernel test robot <xiaolong.ye@...el.com>
To: "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Will Deacon <will.deacon@....com>,
Alan Stern <stern@...land.harvard.edu>,
Andrea Parri <parri.andrea@...il.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
LKML <linux-kernel@...r.kernel.org>,
Stephen Rothwell <sfr@...b.auug.org.au>, lkp@...org
Subject: [completion] f9838c6237:
inconsistent{IN-HARDIRQ-W}->{HARDIRQ-ON-W}usage
FYI, we noticed the following commit:
commit: f9838c62374400b24785e8ae20f87075ed283cbd ("completion: Replace spin_unlock_wait() with lock/unlock pair")
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
in testcase: cpu-hotplug
with following parameters:
on test machine: qemu-system-x86_64 -enable-kvm -cpu Nehalem -smp 2 -m 1G
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+-------------------------------------------------+------------+------------+
| | 4a6fc6107e | f9838c6237 |
+-------------------------------------------------+------------+------------+
| boot_successes | 8 | 4 |
| boot_failures | 0 | 4 |
| inconsistent{IN-HARDIRQ-W}->{HARDIRQ-ON-W}usage | 0 | 4 |
+-------------------------------------------------+------------+------------+
[ 33.432536] WARNING: inconsistent lock state
[ 33.432929] 4.13.0-rc2-00005-gf9838c62 #122 Not tainted
[ 33.433400] --------------------------------
[ 33.433786] inconsistent {IN-HARDIRQ-W} -> {HARDIRQ-ON-W} usage.
[ 33.434350] swapper/1/0 [HC0[0]:SC0[0]:HE1:SE1] takes:
[ 33.434814] (vector_lock){?.-...}, at: [<ffffffffb8081af6>] lock_vector_lock+0x15/0x17
[ 33.435565] {IN-HARDIRQ-W} state was registered at:
[ 33.436021] __lock_acquire+0x342/0xe43
[ 33.436384] lock_acquire+0x142/0x1dd
[ 33.436730] _raw_spin_lock_irqsave+0x4d/0x88
[ 33.437139] assign_irq_vector+0x30/0x2f9
[ 33.437515] apic_set_affinity+0x27/0x2f
[ 33.437889] msi_domain_set_affinity+0x21/0x5c
[ 33.438321] irq_do_set_affinity+0x1d/0x42
[ 33.438700] irq_move_masked_irq+0x81/0x91
[ 33.439086] irq_move_irq+0x46/0x5c
[ 33.439412] apic_ack_edge+0x22/0x39
[ 33.439748] irq_chip_ack_parent+0x14/0x16
[ 33.440134] handle_edge_irq+0xa4/0xfc
[ 33.440487] handle_irq+0xf0/0xfc
[ 33.440800] do_IRQ+0x80/0xfc
[ 33.441086] ret_from_intr+0x0/0x1e
[ 33.441411] native_safe_halt+0x6/0x8
[ 33.441753] default_idle+0x3f/0x18b
[ 33.442094] arch_cpu_idle+0xf/0x11
[ 33.442420] default_idle_call+0x36/0x3d
[ 33.442783] do_idle+0xd3/0x19a
[ 33.443085] cpu_startup_entry+0x1f/0x21
[ 33.443452] start_secondary+0x108/0x10b
[ 33.443818] verify_cpu+0x0/0xf1
[ 33.444128] irq event stamp: 457043
[ 33.444449] hardirqs last enabled at (457043): [<ffffffffb8d7d4f3>] _raw_spin_unlock_irqrestore+0x48/0x5e
[ 33.445314] hardirqs last disabled at (457042): [<ffffffffb8d7d2dd>] _raw_spin_lock_irqsave+0x27/0x88
[ 33.446139] softirqs last enabled at (457018): [<ffffffffb8d822e2>] __do_softirq+0x352/0x43b
[ 33.446904] softirqs last disabled at (456971): [<ffffffffb80a4fc8>] irq_exit+0x5d/0xad
[ 33.447614]
[ 33.447614] other info that might help us debug this:
[ 33.448205] Possible unsafe locking scenario:
[ 33.448205]
[ 33.448751] CPU0
[ 33.448984] ----
[ 33.449212] lock(vector_lock);
[ 33.449510] <Interrupt>
[ 33.449753] lock(vector_lock);
[ 33.450072]
[ 33.450072] *** DEADLOCK ***
[ 33.450072]
[ 33.450605] no locks held by swapper/1/0.
[ 33.450975]
[ 33.450975] stack backtrace:
[ 33.451371] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.13.0-rc2-00005-gf9838c62 #122
[ 33.452075] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.9.3-20161025_171302-gandalf 04/01/2014
[ 33.452981] Call Trace:
[ 33.453212] dump_stack+0x86/0xc0
[ 33.453518] print_usage_bug+0x247/0x256
[ 33.453942] ? check_usage_forwards+0x10c/0x10c
[ 33.454353] mark_lock+0x345/0x504
[ 33.454666] __lock_acquire+0x3aa/0xe43
[ 33.455022] lock_acquire+0x142/0x1dd
[ 33.455358] ? lock_vector_lock+0x15/0x17
[ 33.455722] _raw_spin_lock+0x34/0x6a
[ 33.456060] ? lock_vector_lock+0x15/0x17
[ 33.456424] lock_vector_lock+0x15/0x17
[ 33.456772] start_secondary+0xad/0x10b
[ 33.457126] secondary_startup_64+0x9f/0x9f
[ 33.625476] KVM setup async PF for cpu 1
[ 33.626951] kvm-stealtime: cpu 1, msr 33a0cc80
[ 34.668631] Unregister pv shared memory for cpu 1
[ 34.670735] numa_remove_cpu cpu 1 node 0: mask now 0
[ 34.678082] smpboot: CPU 1 is now offline
[ 34.706387] x86: Booting SMP configuration:
[ 34.707375] smpboot: Booting Node 0 Processor 1 APIC 0x1
[ 34.711158] kvm-clock: cpu 1, msr 0:354af041, secondary cpu clock
[ 34.712001] masked ExtINT on CPU#1
[ 34.712557] numa_add_cpu cpu 1 node 0: mask now 0-1
[ 34.791525] KVM setup async PF for cpu 1
[ 34.793752] kvm-stealtime: cpu 1, msr 33a0cc80
[ 35.468234] Unregister pv shared memory for cpu 1
[ 35.470234] numa_remove_cpu cpu 1 node 0: mask now 0
[ 35.472369] smpboot: CPU 1 is now offline
[ 36.489814] x86: Booting SMP configuration:
[ 36.490820] smpboot: Booting Node 0 Processor 1 APIC 0x1
[ 36.492193] kvm-clock: cpu 1, msr 0:354af041, secondary cpu clock
[ 36.493248] masked ExtINT on CPU#1
[ 36.494005] numa_add_cpu cpu 1 node 0: mask now 0-1
[ 36.576397] KVM setup async PF for cpu 1
[ 36.577751] kvm-stealtime: cpu 1, msr 33a0cc80
[ 36.602823] Unregister pv shared memory for cpu 1
[ 36.606825] numa_remove_cpu cpu 1 node 0: mask now 0
[ 36.608737] smpboot: CPU 1 is now offline
[ 36.728615] x86: Booting SMP configuration:
[ 36.730895] smpboot: Booting Node 0 Processor 1 APIC 0x1
[ 36.734061] kvm-clock: cpu 1, msr 0:354af041, secondary cpu clock
[ 36.735188] masked ExtINT on CPU#1
[ 36.735823] numa_add_cpu cpu 1 node 0: mask now 0-1
[ 36.822495] KVM setup async PF for cpu 1
[ 36.823892] kvm-stealtime: cpu 1, msr 33a0cc80
[ 37.859986] Unregister pv shared memory for cpu 1
[ 37.863025] numa_remove_cpu cpu 1 node 0: mask now 0
[ 37.865247] smpboot: CPU 1 is now offline
[ 37.883135] x86: Booting SMP configuration:
To reproduce:
git clone https://github.com/01org/lkp-tests.git
cd lkp-tests
bin/lkp qemu -k <bzImage> job-script # job-script is attached in this email
Thanks,
Kernel Test Robot
View attachment "config-4.13.0-rc2-00005-gf9838c62" of type "text/plain" (117949 bytes)
View attachment "job-script" of type "text/plain" (3952 bytes)
Download attachment "dmesg.xz" of type "application/octet-stream" (30036 bytes)
View attachment "cpu-hotplug" of type "text/plain" (29 bytes)
Powered by blists - more mailing lists