usb-testing boot error: WARNING in kvm_wait

Status: fixed on 2021/11/10 00:50
Fix commit: f4e61f0c9add  x86/kvm: Fix broken irq restoration in kvm_wait
First crash: 698d, last: 695d

Sample crash report:
9pnet: Installing 9P2000 support
Key type dns_resolver registered
IPI shorthand broadcast: enabled
sched_clock: Marking stable (8449983923, 42781863)->(8498347699, -5581913)
registered taskstats version 1
Loading compiled-in X.509 certificates
Loaded X.509 cert 'Build time autogenerated kernel key: f850c787ad998c396ae089c083b940ff0a9abb77'
debug_vm_pgtable: [debug_vm_pgtable         ]: Validating architecture page table helpers
Key type encrypted registered
AppArmor: AppArmor sha1 policy hashing enabled
ima: No TPM chip found, activating TPM-bypass!
ima: Allocated hash algorithm: sha256
ima: No architecture policies found
evm: Initialising EVM extended attributes:
evm: security.apparmor
evm: security.ima
evm: security.capability
evm: HMAC attrs: 0x1
PM:   Magic number: 13:716:851
printk: console [netcon0] enabled
netconsole: network logging started
cfg80211: Loading compiled-in X.509 certificates for regulatory database
cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
ALSA device list:
  No soundcards found.
md: Waiting for all devices to be available before autodetect
md: If you don't use raid, use raid=noautodetect
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null). Quota mode: none.
VFS: Mounted root (ext4 filesystem) readonly on device 8:1.
devtmpfs: mounted
Freeing unused kernel image (initmem) memory: 2124K
Write protecting the kernel read-only data: 106496k
Freeing unused kernel image (text/rodata gap) memory: 2028K
Freeing unused kernel image (rodata/data gap) memory: 520K
Run /sbin/init as init process
systemd[1]: Detected virtualization kvm.
systemd[1]: Detected architecture x86-64.
systemd[1]: Set hostname to <syzkaller>.
systemd[1]: Listening on Journal Audit Socket.
systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
systemd[1]: Listening on Syslog Socket.
systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
systemd[1]: Listening on udev Control Socket.
systemd[1]: Created slice System Slice.
------------[ cut here ]------------
raw_local_irq_restore() called with IRQs enabled
WARNING: CPU: 0 PID: 1 at kernel/locking/irqflag-debug.c:10 warn_bogus_irq_restore+0x1d/0x20 kernel/locking/irqflag-debug.c:10
Modules linked in:
CPU: 0 PID: 1 Comm: systemd Not tainted 5.12.0-rc2-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:warn_bogus_irq_restore+0x1d/0x20 kernel/locking/irqflag-debug.c:10
Code: d4 ff cc cc cc cc cc cc cc cc cc cc cc 80 3d b9 f3 12 03 00 74 01 c3 48 c7 c7 80 2f 07 86 c6 05 a8 f3 12 03 01 e8 98 4a d4 ff <0f> 0b c3 44 8b 05 05 96 1d 03 55 53 65 48 8b 1c 25 40 ef 01 00 45
RSP: 0018:ffffc9000001f7f0 EFLAGS: 00010282
RAX: 0000000000000000 RBX: ffffffff87b43140 RCX: 0000000000000000
RDX: ffff888100228000 RSI: ffffffff8129c8a3 RDI: fffff52000003ef0
RBP: 0000000000000200 R08: 0000000000000001 R09: 0000000000000000
R10: ffffffff814a85bb R11: 0000000000000000 R12: 0000000000000003
R13: fffffbfff0f68628 R14: 0000000000000001 R15: ffff8881f6a34000
FS:  00007fa15d48c500(0000) GS:ffff8881f6a00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000557a60f2cd38 CR3: 000000010a506000 CR4: 00000000001506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 kvm_wait arch/x86/kernel/kvm.c:860 [inline]
 kvm_wait+0xc9/0xe0 arch/x86/kernel/kvm.c:837
 pv_wait arch/x86/include/asm/paravirt.h:564 [inline]
 pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
 __pv_queued_spin_lock_slowpath+0x86f/0xad0 kernel/locking/qspinlock.c:508
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:554 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock+0x200/0x2b0 kernel/locking/spinlock_debug.c:113
 spin_lock include/linux/spinlock.h:354 [inline]
 alloc_vmap_area+0x1ba/0x1db0 mm/vmalloc.c:1215
 __get_vm_area_node+0x128/0x380 mm/vmalloc.c:2096
 __vmalloc_node_range+0xcb/0x170 mm/vmalloc.c:2571
 alloc_thread_stack_node kernel/fork.c:244 [inline]
 dup_task_struct kernel/fork.c:864 [inline]
 copy_process+0x4808/0x6be0 kernel/fork.c:1940
 kernel_clone+0xe7/0xa70 kernel/fork.c:2492
 __do_sys_clone+0xc8/0x110 kernel/fork.c:2609
 do_syscall_64+0x2d/0x70 arch/x86/entry/common.c:46
RIP: 0033:0x7fa15ba3238b
Code: db 45 85 f6 0f 85 95 01 00 00 64 4c 8b 04 25 10 00 00 00 31 d2 4d 8d 90 d0 02 00 00 31 f6 bf 11 00 20 01 b8 38 00 00 00 0f 05 <48> 3d 00 f0 ff ff 0f 87 de 00 00 00 85 c0 41 89 c5 0f 85 e5 00 00
RSP: 002b:00007ffcdcb51430 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 00007ffcdcb51430 RCX: 00007fa15ba3238b
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000001200011
RBP: 00007ffcdcb51480 R08: 00007fa15d48c500 R09: 0000000000000000
R10: 00007fa15d48c7d0 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000020 R14: 0000000000000001 R15: 0000000000000000

Crashes (3):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets Title
ci2-upstream-usb 2021/03/11 20:56 usb-testing 60a35ba9141f 429d8a6b .config console log report usb-testing boot error: WARNING in kvm_wait
ci2-upstream-usb 2021/03/09 17:20 usb-testing bebccc4bc658 26967e35 .config console log report usb-testing boot error: WARNING in kvm_wait
ci2-upstream-usb 2021/03/09 03:51 usb-testing a14ecf9f692a 09fbf400 .config console log report usb-testing boot error: WARNING in kvm_wait
* Struck through repros no longer work on HEAD.