=============================
[ BUG: Invalid wait context ]
syzkaller #0 Tainted: G L
-----------------------------
kworker/3:4/5839 is trying to lock:
ffff88803b2fd330 (&gpc->lock){....}-{3:3}, at: kvm_xen_set_evtchn_fast+0x253/0xe80 arch/x86/kvm/xen.c:1819
other info that might help us debug this:
context-{2:2}
4 locks held by kworker/3:4/5839:
#0: ffff8880221bb140 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x12d6/0x1980 kernel/workqueue.c:3289
#1: ffffc90003a57d08 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x973/0x1980 kernel/workqueue.c:3290
#2: ffff88802cbf91d8 (&dev->mutex){....}-{4:4}, at: device_lock include/linux/device.h:1040 [inline]
#2: ffff88802cbf91d8 (&dev->mutex){....}-{4:4}, at: hub_event+0x1bd/0x4af0 drivers/usb/core/hub.c:5899
#3: ffff88803b2fd890 (&kvm->srcu){.?.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:187 [inline]
#3: ffff88803b2fd890 (&kvm->srcu){.?.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:294 [inline]
#3: ffff88803b2fd890 (&kvm->srcu){.?.+}-{0:0}, at: kvm_xen_set_evtchn_fast+0x245/0xe80 arch/x86/kvm/xen.c:1817
stack backtrace:
CPU: 3 UID: 0 PID: 5839 Comm: kworker/3:4 Tainted: G L syzkaller #0 PREEMPT(full)
Tainted: [L]=SOFTLOCKUP
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
Workqueue: usb_hub_wq hub_event
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
print_lock_invalid_wait_context kernel/locking/lockdep.c:4830 [inline]
check_wait_context kernel/locking/lockdep.c:4902 [inline]
__lock_acquire+0xfa4/0x2630 kernel/locking/lockdep.c:5187
lock_acquire kernel/locking/lockdep.c:5868 [inline]
lock_acquire+0x1b1/0x370 kernel/locking/lockdep.c:5825
__raw_read_lock_irqsave include/linux/rwlock_api_smp.h:174 [inline]
_raw_read_lock_irqsave+0x46/0x90 kernel/locking/spinlock.c:240
kvm_xen_set_evtchn_fast+0x253/0xe80 arch/x86/kvm/xen.c:1819
xen_timer_callback+0x1db/0x2a0 arch/x86/kvm/xen.c:140
__run_hrtimer kernel/time/hrtimer.c:1930 [inline]
__hrtimer_run_queues+0x142/0xa00 kernel/time/hrtimer.c:1994
hrtimer_interrupt+0x3e5/0x940 kernel/time/hrtimer.c:2113
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
__sysvec_apic_timer_interrupt+0x10b/0x460 arch/x86/kernel/apic/apic.c:1067
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1061 [inline]
sysvec_apic_timer_interrupt+0x9e/0xc0 arch/x86/kernel/apic/apic.c:1061
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697
RIP: 0010:console_trylock_spinning kernel/printk/printk.c:2039 [inline]
RIP: 0010:vprintk_emit+0x553/0x6b0 kernel/printk/printk.c:2478
Code: 00 4d 85 ed 0f 85 1b 01 00 00 e8 e8 61 21 00 9c 5d 81 e5 00 02 00 00 31 ff 48 89 ee e8 b6 5c 21 00 48 85 ed 0f 85 27 01 00 00 c8 61 21 00 45 31 c9 41 b8 01 00 00 00 31 c9 48 8d 05 00 00 00
RSP: 0018:ffffc90003a572b8 EFLAGS: 00000293
RAX: 0000000000000000 RBX: 0000000000000056 RCX: ffffffff81e74f0a
RDX: ffff888029c82540 RSI: ffffffff81e74f14 RDI: ffff888029c82540
RBP: 0000000000000000 R08: 0000000000000007 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 1ffff9200074ae59
R13: 0000000000000200 R14: ffff888035c4a540 R15: ffffc90003a57478
dev_vprintk_emit+0x394/0x3e0 drivers/base/core.c:4930
dev_printk_emit+0xd2/0x10d drivers/base/core.c:4941
__dev_printk+0xcb/0x100 drivers/base/core.c:4953
_dev_notice+0xef/0x130 drivers/base/core.c:4998
usb_parse_endpoint drivers/usb/core/config.c:452 [inline]
usb_parse_interface drivers/usb/core/config.c:628 [inline]
usb_parse_configuration drivers/usb/core/config.c:841 [inline]
usb_get_configuration.cold+0xc61/0x17fd drivers/usb/core/config.c:994
usb_enumerate_device drivers/usb/core/hub.c:2527 [inline]
usb_new_device+0x580/0x7d0 drivers/usb/core/hub.c:2665
hub_port_connect drivers/usb/core/hub.c:5567 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5707 [inline]
port_event drivers/usb/core/hub.c:5871 [inline]
hub_event+0x314d/0x4af0 drivers/usb/core/hub.c:5953
process_one_work+0xa0e/0x1980 kernel/workqueue.c:3314
process_scheduled_works kernel/workqueue.c:3397 [inline]
worker_thread+0x5ef/0xe50 kernel/workqueue.c:3478
kthread+0x370/0x450 kernel/kthread.c:436
ret_from_fork+0x72b/0xd50 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
----------------
Code disassembly (best guess):
0: 00 4d 85 add %cl,-0x7b(%rbp)
3: ed in (%dx),%eax
4: 0f 85 1b 01 00 00 jne 0x125
a: e8 e8 61 21 00 call 0x2161f7
f: 9c pushf
10: 5d pop %rbp
11: 81 e5 00 02 00 00 and $0x200,%ebp
17: 31 ff xor %edi,%edi
19: 48 89 ee mov %rbp,%rsi
1c: e8 b6 5c 21 00 call 0x215cd7
21: 48 85 ed test %rbp,%rbp
24: 0f 85 27 01 00 00 jne 0x151
* 2a: e8 c8 61 21 00 call 0x2161f7 <-- trapping instruction
2f: 45 31 c9 xor %r9d,%r9d
32: 41 b8 01 00 00 00 mov $0x1,%r8d
38: 31 c9 xor %ecx,%ecx
3a: 48 rex.W
3b: 8d .byte 0x8d
3c: 05 .byte 0x5
3d: 00 00 add %al,(%rax)