syzbot


BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue (2)

Status: upstream: reported C repro on 2020/01/29 04:42
Reported-by: syzbot+a1d2892b0b96e832a410@syzkaller.appspotmail.com
First crash: 1709d, last: 588d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue C done 20 1754d 1992d 1/1 fixed on 2019/12/16 09:09
upstream BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue block C 8 2178d 2198d 11/28 fixed on 2018/11/12 21:25
linux-4.19 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue (2) C error 20 690d 1754d 0/1 upstream: reported C repro on 2019/12/15 04:28
linux-4.19 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue C done 12 1801d 1986d 1/1 fixed on 2019/12/14 05:59
Fix bisection attempts (25)
Created Duration User Patch Repo Result
2023/02/23 11:32 32m bisect fix linux-4.14.y OK (0) job log log
2023/01/24 00:13 25m bisect fix linux-4.14.y OK (0) job log log
2022/11/08 13:50 28m bisect fix linux-4.14.y OK (0) job log log
2022/08/30 03:10 23m bisect fix linux-4.14.y OK (0) job log log
2022/07/28 10:36 25m bisect fix linux-4.14.y OK (0) job log log
2022/05/19 08:19 29m bisect fix linux-4.14.y OK (0) job log log
2022/04/19 07:45 21m bisect fix linux-4.14.y OK (0) job log log
2022/03/20 04:05 21m bisect fix linux-4.14.y OK (0) job log log
2022/01/26 18:43 28m bisect fix linux-4.14.y OK (0) job log log
2021/12/27 17:58 30m bisect fix linux-4.14.y OK (0) job log log
2021/11/27 17:31 26m bisect fix linux-4.14.y OK (0) job log log
2021/10/28 17:01 29m bisect fix linux-4.14.y OK (0) job log log
2021/09/24 18:16 28m bisect fix linux-4.14.y OK (0) job log log
2021/08/25 17:48 27m bisect fix linux-4.14.y OK (0) job log log
2021/07/26 16:58 30m bisect fix linux-4.14.y OK (0) job log log
2021/06/26 16:29 28m bisect fix linux-4.14.y OK (0) job log log
2021/05/27 15:58 28m bisect fix linux-4.14.y OK (0) job log log
2021/04/27 14:58 28m bisect fix linux-4.14.y OK (0) job log log
2021/03/28 14:36 22m bisect fix linux-4.14.y OK (0) job log log
2021/02/26 14:12 22m bisect fix linux-4.14.y OK (0) job log log
2021/01/27 13:45 27m bisect fix linux-4.14.y OK (0) job log log
2020/12/28 13:20 24m bisect fix linux-4.14.y OK (0) job log log
2020/11/28 12:53 27m bisect fix linux-4.14.y OK (0) job log log
2020/10/23 06:35 24m bisect fix linux-4.14.y OK (0) job log log
2020/09/23 06:12 23m bisect fix linux-4.14.y OK (0) job log log

Sample crash report:
RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f7d9848ad29
RDX: 0000000000000000 RSI: 000000000000ab03 RDI: 0000000000000003
RBP: 00007ffee56cac20 R08: 0000000000000002 R09: 00007f7d98003631
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000007
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
BUG: unable to handle kernel NULL pointer dereference at 0000000000000120
IP: set_bit arch/x86/include/asm/bitops.h:81 [inline]
IP: cpumask_set_cpu include/linux/cpumask.h:283 [inline]
IP: blk_mq_map_swqueue+0x253/0x990 block/blk-mq.c:2171
PGD a3115067 P4D a3115067 PUD b3825067 PMD 0 
Oops: 0002 [#1] PREEMPT SMP KASAN
Modules linked in:
CPU: 0 PID: 7963 Comm: syz-executor271 Not tainted 4.14.295-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022
task: ffff8880982a6180 task.stack: ffff8880919d0000
RIP: 0010:set_bit arch/x86/include/asm/bitops.h:81 [inline]
RIP: 0010:cpumask_set_cpu include/linux/cpumask.h:283 [inline]
RIP: 0010:blk_mq_map_swqueue+0x253/0x990 block/blk-mq.c:2171
RSP: 0018:ffff8880919d7a80 EFLAGS: 00010297
RAX: ffff8880982a6180 RBX: ffff8880ae93b0b0 RCX: 1ffff11015d0a3d1
RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff88cc8d68
RBP: 0000000000000001 R08: ffff8880ae851e80 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000001
R13: ffff8882386df840 R14: 0000000000000000 R15: dffffc0000000000
FS:  0000555555e07300(0000) GS:ffff8880ba400000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000120 CR3: 00000000ab3ae000 CR4: 00000000003406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 blk_mq_queue_reinit block/blk-mq.c:2514 [inline]
 __blk_mq_update_nr_hw_queues block/blk-mq.c:2752 [inline]
 blk_mq_update_nr_hw_queues+0x246/0x3e0 block/blk-mq.c:2762
 nbd_start_device+0x1d7/0xca0 drivers/block/nbd.c:1201
 nbd_start_device_ioctl drivers/block/nbd.c:1252 [inline]
 __nbd_ioctl drivers/block/nbd.c:1334 [inline]
 nbd_ioctl+0x3c4/0xac0 drivers/block/nbd.c:1374
 __blkdev_driver_ioctl block/ioctl.c:297 [inline]
 blkdev_ioctl+0x540/0x1830 block/ioctl.c:594
 block_ioctl+0xd9/0x120 fs/block_dev.c:1893
 vfs_ioctl fs/ioctl.c:46 [inline]
 file_ioctl fs/ioctl.c:500 [inline]
 do_vfs_ioctl+0x75a/0xff0 fs/ioctl.c:684
 SYSC_ioctl fs/ioctl.c:701 [inline]
 SyS_ioctl+0x7f/0xb0 fs/ioctl.c:692
 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292
 entry_SYSCALL_64_after_hwframe+0x46/0xbb
RIP: 0033:0x7f7d9848ad29
RSP: 002b:00007ffee56cac18 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f7d9848ad29
RDX: 0000000000000000 RSI: 000000000000ab03 RDI: 0000000000000003
RBP: 00007ffee56cac20 R08: 0000000000000002 R09: 00007f7d98003631
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000007
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
Code: 4d 8d 34 c8 4c 89 f1 48 c1 e9 03 42 80 3c 39 00 0f 85 37 05 00 00 83 fd 07 4d 8b 36 0f 87 42 04 00 00 48 89 04 24 e8 ad 04 4a fe <f0> 4d 0f ab a6 20 01 00 00 49 8d be 78 01 00 00 48 8b 04 24 48 
RIP: set_bit arch/x86/include/asm/bitops.h:81 [inline] RSP: ffff8880919d7a80
RIP: cpumask_set_cpu include/linux/cpumask.h:283 [inline] RSP: ffff8880919d7a80
RIP: blk_mq_map_swqueue+0x253/0x990 block/blk-mq.c:2171 RSP: ffff8880919d7a80
CR2: 0000000000000120
---[ end trace 37b25f9166bd04db ]---
----------------
Code disassembly (best guess):
   0:	4d 8d 34 c8          	lea    (%r8,%rcx,8),%r14
   4:	4c 89 f1             	mov    %r14,%rcx
   7:	48 c1 e9 03          	shr    $0x3,%rcx
   b:	42 80 3c 39 00       	cmpb   $0x0,(%rcx,%r15,1)
  10:	0f 85 37 05 00 00    	jne    0x54d
  16:	83 fd 07             	cmp    $0x7,%ebp
  19:	4d 8b 36             	mov    (%r14),%r14
  1c:	0f 87 42 04 00 00    	ja     0x464
  22:	48 89 04 24          	mov    %rax,(%rsp)
  26:	e8 ad 04 4a fe       	callq  0xfe4a04d8
* 2b:	f0 4d 0f ab a6 20 01 	lock bts %r12,0x120(%r14) <-- trapping instruction
  32:	00 00
  34:	49 8d be 78 01 00 00 	lea    0x178(%r14),%rdi
  3b:	48 8b 04 24          	mov    (%rsp),%rax
  3f:	48                   	rex.W

Crashes (13):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/10/09 10:28 linux-4.14.y 9d5c0b3a8e1a aea5da89 .config console log report syz C [disk image] [vmlinux] ci2-linux-4-14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue
2022/06/28 10:09 linux-4.14.y f051383ef03b ef82eb2c .config console log report syz C ci2-linux-4-14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue
2022/06/04 23:26 linux-4.14.y 501eec4f9e13 c8857892 .config console log report syz C ci2-linux-4-14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue
2022/02/18 04:05 linux-4.14.y a35d65bedfbc 3cd800e4 .config console log report syz C ci2-linux-4-14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue
2022/02/15 15:12 linux-4.14.y 8034e99d1a01 8b9ca619 .config console log report syz C ci2-linux-4-14 BUG: unable to handle kernel NULL pointer dereference in blk_mq_map_swqueue
2020/01/29 05:05 linux-4.14.y 9a95f25269bd c8e81ce4 .config console log report syz C ci2-linux-4-14
2020/10/29 12:16 linux-4.14.y 2b7915014161 f24824d3 .config console log report info ci2-linux-4-14
2020/10/25 12:33 linux-4.14.y 5b7a52cd2eef a1839e81 .config console log report info ci2-linux-4-14
2020/06/25 05:19 linux-4.14.y b850307b279c 9d60b18e .config console log report ci2-linux-4-14
2020/03/28 09:56 linux-4.14.y 01364dad1d45 831e9a81 .config console log report ci2-linux-4-14
2020/03/10 03:05 linux-4.14.y 78d697fc93f9 35f53e45 .config console log report ci2-linux-4-14
2020/02/29 14:36 linux-4.14.y 78d697fc93f9 c88c7b75 .config console log report ci2-linux-4-14
2020/01/29 04:41 linux-4.14.y 9a95f25269bd c8e81ce4 .config console log report ci2-linux-4-14
* Struck through repros no longer work on HEAD.