syzbot


BUG: unable to handle kernel NULL pointer dereference in schedule_timeout

Status: fixed on 2020/07/17 17:58
Subsystems: usb
[Documentation on labels]
Fix commit: 3021e69219e2 kcov: check kcov_softirq in kcov_remote_stop()
First crash: 1255d, last: 1255d

Sample crash report:
BUG: kernel NULL pointer dereference, address: 0000000000000000
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 981f0067 P4D 981f0067 PUD a81c2067 PMD 0 
Oops: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 9847 Comm: syz-executor.3 Not tainted 5.7.0-rc7-next-20200529-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__sanitizer_cov_trace_pc+0x43/0x60 kernel/kcov.c:202
Code: 24 74 0f 80 e6 01 74 35 8b 90 0c 14 00 00 85 d2 74 2b 8b 90 e8 13 00 00 83 fa 02 75 20 48 8b 88 f0 13 00 00 8b 80 ec 13 00 00 <48> 8b 11 48 83 c2 01 48 39 d0 76 07 48 89 34 d1 48 89 11 c3 66 0f
RSP: 0018:ffffc900019b6fd8 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 00000000ffffe5bd RCX: 0000000000000000
RDX: 0000000000000002 RSI: ffffffff87e22534 RDI: ffffffff8c9086a0
RBP: 1ffff92000336dff R08: 0000000000000000 R09: 0000000000000000
R10: ffffffff8c588a87 R11: fffffbfff18b1150 R12: ffffc900019b7038
R13: ffffc900019b7218 R14: ffffffff89a09000 R15: ffffc900019b7150
FS:  00007f986e443700(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 000000008e662000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 __mod_timer kernel/time/timer.c:1008 [inline]
 schedule_timeout+0x124/0x850 kernel/time/timer.c:1896
 do_wait_for_common kernel/sched/completion.c:85 [inline]
 __wait_for_common kernel/sched/completion.c:106 [inline]
 wait_for_common kernel/sched/completion.c:117 [inline]
 wait_for_completion_timeout+0x162/0x280 kernel/sched/completion.c:157
 usb_start_wait_urb+0x144/0x2b0 drivers/usb/core/message.c:63
 usb_internal_control_msg drivers/usb/core/message.c:102 [inline]
 usb_control_msg+0x31c/0x4a0 drivers/usb/core/message.c:153
 get_port_status drivers/usb/core/hub.c:573 [inline]
 hub_ext_port_status+0x125/0x460 drivers/usb/core/hub.c:590
 hub_port_status drivers/usb/core/hub.c:612 [inline]
 hub_activate+0x4f4/0x16c0 drivers/usb/core/hub.c:1119
 hub_resume+0x97/0x3b0 drivers/usb/core/hub.c:3790
 usb_resume_interface drivers/usb/core/driver.c:1298 [inline]
 usb_resume_interface.isra.0+0x2db/0x390 drivers/usb/core/driver.c:1256
 usb_resume_both+0x26a/0x860 drivers/usb/core/driver.c:1458
 __rpm_callback+0x27e/0x3c0 drivers/base/power/runtime.c:357
 rpm_callback+0x18f/0x230 drivers/base/power/runtime.c:487
 rpm_resume+0x1162/0x1930 drivers/base/power/runtime.c:849
 __pm_runtime_resume+0x103/0x170 drivers/base/power/runtime.c:1080
 pm_runtime_get_sync include/linux/pm_runtime.h:236 [inline]
 usb_autoresume_device+0x1e/0x60 drivers/usb/core/driver.c:1645
 usbdev_open+0x1f3/0x930 drivers/usb/core/devio.c:1033
 chrdev_open+0x219/0x5c0 fs/char_dev.c:414
 do_dentry_open+0x4b6/0x11a0 fs/open.c:822
 do_open fs/namei.c:3234 [inline]
 path_openat+0x1e9e/0x27d0 fs/namei.c:3351
 do_filp_open+0x192/0x260 fs/namei.c:3378
 do_sys_openat2+0x585/0x7a0 fs/open.c:1173
 do_sys_open+0xc3/0x140 fs/open.c:1189
 do_syscall_64+0x60/0xe0 arch/x86/entry/common.c:359
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x416911
Code: 75 14 b8 02 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 04 19 00 00 c3 48 83 ec 08 e8 0a fa ff ff 48 89 04 24 b8 02 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 53 fa ff ff 48 89 d0 48 83 c4 08 48 3d 01
RSP: 002b:00007f986e4427a0 EFLAGS: 00000293 ORIG_RAX: 0000000000000002
RAX: ffffffffffffffda RBX: 6666666666666667 RCX: 0000000000416911
RDX: 0000000000000000 RSI: 0000000000028081 RDI: 00007f986e442850
RBP: 000000000078bfa0 R08: 000000000000000f R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000293 R12: 00000000ffffffff
R13: 0000000000000c5b R14: 00000000004ceb63 R15: 00007f986e4436d4
Modules linked in:
CR2: 0000000000000000
---[ end trace a8858c38325f25e9 ]---
RIP: 0010:__sanitizer_cov_trace_pc+0x43/0x60 kernel/kcov.c:202
Code: 24 74 0f 80 e6 01 74 35 8b 90 0c 14 00 00 85 d2 74 2b 8b 90 e8 13 00 00 83 fa 02 75 20 48 8b 88 f0 13 00 00 8b 80 ec 13 00 00 <48> 8b 11 48 83 c2 01 48 39 d0 76 07 48 89 34 d1 48 89 11 c3 66 0f
RSP: 0018:ffffc900019b6fd8 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 00000000ffffe5bd RCX: 0000000000000000
RDX: 0000000000000002 RSI: ffffffff87e22534 RDI: ffffffff8c9086a0
RBP: 1ffff92000336dff R08: 0000000000000000 R09: 0000000000000000
R10: ffffffff8c588a87 R11: fffffbfff18b1150 R12: ffffc900019b7038
R13: ffffc900019b7218 R14: ffffffff89a09000 R15: ffffc900019b7150
FS:  00007f986e443700(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffe8a49f387 CR3: 000000008e662000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/26 20:06 linux-next e7b08814b16b aea82c00 .config console log report ci-upstream-linux-next-kasan-gce-root
* Struck through repros no longer work on HEAD.