syzbot


BUG: unable to handle kernel NULL pointer dereference in mempool_alloc_noprof

Status: moderation: reported on 2024/05/27 00:55
Subsystems: block
[Documentation on labels]
Reported-by: syzbot+c44fe924a6d145fb9301@syzkaller.appspotmail.com
First crash: 25d, last: 19d

Sample crash report:
BUG: kernel NULL pointer dereference, address: 0000000000000014
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 5e649067 P4D 5e649067 PUD 15024067 PMD 0 
Oops: Oops: 0000 [#1] PREEMPT SMP KASAN NOPTI
CPU: 0 PID: 11 Comm: kworker/u32:0 Not tainted 6.10.0-rc1-syzkaller-00021-ge0cce98fe279 #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Workqueue: writeback wb_workfn (flush-bcachefs-56)
RIP: 0010:___slab_alloc+0x27a/0x1870 mm/slub.c:3609
Code: 0b 49 83 7f 28 00 0f 85 de 07 00 00 4d 89 77 28 49 83 7c 24 10 00 0f 85 45 06 00 00 4d 8b 7c 24 18 4d 85 ff 0f 84 d2 06 00 00 <49> 8b 47 10 83 bd 68 ff ff ff ff 49 89 44 24 18 74 20 49 8b 07 48
RSP: 0018:ffffc900003d6fc0 EFLAGS: 00010002
RAX: 0000000000000000 RBX: 0000000000000202 RCX: ffffffff816bb84e
RDX: 0000000000000001 RSI: ffffffff81e19168 RDI: 0000000000000000
RBP: ffffc900003d70a0 R08: 0000000000000000 R09: fffffbfff283ee58
R10: ffffffff941f72c7 R11: 0000000000000002 R12: ffffe8ffad033e30
R13: ffff88805c3d2f00 R14: ffff888015f22440 R15: 0000000000000004
FS:  0000000000000000(0000) GS:ffff88802c000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000014 CR3: 00000000530f2000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 __slab_alloc.constprop.0+0x56/0xb0 mm/slub.c:3756
 __slab_alloc_node mm/slub.c:3809 [inline]
 slab_alloc_node mm/slub.c:3988 [inline]
 kmem_cache_alloc_noprof+0x2ae/0x2f0 mm/slub.c:4007
 mempool_alloc_noprof+0x176/0x390 mm/mempool.c:402
 bio_alloc_bioset+0x480/0x8b0 block/bio.c:554
 bch2_writepage_io_alloc fs/bcachefs/fs-io-buffered.c:476 [inline]
 __bch2_writepage+0x107e/0x2500 fs/bcachefs/fs-io-buffered.c:610
 write_cache_pages+0xb0/0x130 mm/page-writeback.c:2591
 bch2_writepages+0x11f/0x200 fs/bcachefs/fs-io-buffered.c:650
 do_writepages+0x1a3/0x7f0 mm/page-writeback.c:2634
 __writeback_single_inode+0x163/0xf90 fs/fs-writeback.c:1651
 writeback_sb_inodes+0x611/0x1150 fs/fs-writeback.c:1947
 wb_writeback+0x199/0xb50 fs/fs-writeback.c:2127
 wb_do_writeback fs/fs-writeback.c:2274 [inline]
 wb_workfn+0x28d/0xf40 fs/fs-writeback.c:2314
 process_one_work+0x958/0x1ad0 kernel/workqueue.c:3231
 process_scheduled_works kernel/workqueue.c:3312 [inline]
 worker_thread+0x6c8/0xf70 kernel/workqueue.c:3393
 kthread+0x2c1/0x3a0 kernel/kthread.c:389
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
Modules linked in:
CR2: 0000000000000014
---[ end trace 0000000000000000 ]---
RIP: 0010:___slab_alloc+0x27a/0x1870 mm/slub.c:3609
Code: 0b 49 83 7f 28 00 0f 85 de 07 00 00 4d 89 77 28 49 83 7c 24 10 00 0f 85 45 06 00 00 4d 8b 7c 24 18 4d 85 ff 0f 84 d2 06 00 00 <49> 8b 47 10 83 bd 68 ff ff ff ff 49 89 44 24 18 74 20 49 8b 07 48
RSP: 0018:ffffc900003d6fc0 EFLAGS: 00010002
RAX: 0000000000000000 RBX: 0000000000000202 RCX: ffffffff816bb84e
RDX: 0000000000000001 RSI: ffffffff81e19168 RDI: 0000000000000000
RBP: ffffc900003d70a0 R08: 0000000000000000 R09: fffffbfff283ee58
R10: ffffffff941f72c7 R11: 0000000000000002 R12: ffffe8ffad033e30
R13: ffff88805c3d2f00 R14: ffff888015f22440 R15: 0000000000000004
FS:  0000000000000000(0000) GS:ffff88802c000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000014 CR3: 00000000530f2000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess), 1 bytes skipped:
   0:	49 83 7f 28 00       	cmpq   $0x0,0x28(%r15)
   5:	0f 85 de 07 00 00    	jne    0x7e9
   b:	4d 89 77 28          	mov    %r14,0x28(%r15)
   f:	49 83 7c 24 10 00    	cmpq   $0x0,0x10(%r12)
  15:	0f 85 45 06 00 00    	jne    0x660
  1b:	4d 8b 7c 24 18       	mov    0x18(%r12),%r15
  20:	4d 85 ff             	test   %r15,%r15
  23:	0f 84 d2 06 00 00    	je     0x6fb
* 29:	49 8b 47 10          	mov    0x10(%r15),%rax <-- trapping instruction
  2d:	83 bd 68 ff ff ff ff 	cmpl   $0xffffffff,-0x98(%rbp)
  34:	49 89 44 24 18       	mov    %rax,0x18(%r12)
  39:	74 20                	je     0x5b
  3b:	49 8b 07             	mov    (%r15),%rax
  3e:	48                   	rex.W

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/05/28 19:15 upstream e0cce98fe279 c2e07261 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 BUG: unable to handle kernel NULL pointer dereference in mempool_alloc_noprof
2024/05/23 00:52 upstream 5f16eb0549ab c2e07261 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 BUG: unable to handle kernel NULL pointer dereference in mempool_alloc_noprof
* Struck through repros no longer work on HEAD.