BUG: kernel NULL pointer dereference, address: 0000000000000170 #PF: supervisor write access in kernel mode #PF: error_code(0x0002) - not-present page PGD 134033067 P4D 134033067 PUD 0 Oops: 0002 [#1] PREEMPT SMP KASAN CPU: 1 PID: 296 Comm: syz-executor Tainted: G W 6.1.118-syzkaller-00078-ge2b9748880b9 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 RIP: 0010:arch_atomic_inc_return include/linux/atomic/atomic-arch-fallback.h:440 [inline] RIP: 0010:atomic_inc_return include/linux/atomic/atomic-instrumented.h:199 [inline] RIP: 0010:ihold+0x25/0x60 fs/inode.c:452 Code: 00 00 00 00 00 55 48 89 e5 41 56 53 49 89 fe e8 b1 59 a8 ff 49 8d be 70 01 00 00 be 04 00 00 00 e8 00 cf ef ff bb 01 00 00 00 41 0f c1 9e 70 01 00 00 ff c3 bf 02 00 00 00 89 de e8 34 5d a8 RSP: 0018:ffffc90001337c30 EFLAGS: 00010202 RAX: 0000000000000001 RBX: 0000000000000001 RCX: ffffffff81cd2d10 RDX: 0000000000000001 RSI: 0000000000000004 RDI: 0000000000000170 RBP: ffffc90001337c40 R08: ffffffff81c99044 R09: fffff52000266f6d R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff110262fb271 R13: ffff8881181edee0 R14: 0000000000000000 R15: 1ffff1102303dbe2 FS: 000055555a1dc500(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000170 CR3: 000000012f407000 CR4: 00000000003506a0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: d_delete_notify include/linux/fsnotify.h:289 [inline] vfs_rmdir+0x268/0x500 fs/namei.c:4203 incfs_kill_sb+0x113/0x230 fs/incfs/vfs.c:1995 deactivate_locked_super+0xad/0x110 fs/super.c:334 deactivate_super+0xbe/0xf0 fs/super.c:365 cleanup_mnt+0x485/0x510 fs/namespace.c:1186 __cleanup_mnt+0x19/0x20 fs/namespace.c:1193 task_work_run+0x24d/0x2e0 kernel/task_work.c:203 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline] exit_to_user_mode_loop+0x94/0xa0 kernel/entry/common.c:177 exit_to_user_mode_prepare+0x5a/0xa0 kernel/entry/common.c:210 __syscall_exit_to_user_mode_work kernel/entry/common.c:292 [inline] syscall_exit_to_user_mode+0x26/0x130 kernel/entry/common.c:303 do_syscall_64+0x47/0xb0 arch/x86/entry/common.c:87 entry_SYSCALL_64_after_hwframe+0x68/0xd2 RIP: 0033:0x7f8cc4387057 Code: a8 ff ff ff f7 d8 64 89 01 48 83 c8 ff c3 0f 1f 44 00 00 31 f6 e9 09 00 00 00 66 0f 1f 84 00 00 00 00 00 b8 a6 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 c7 c2 a8 ff ff ff f7 d8 64 89 02 b8 RSP: 002b:00007fffb1aa4b98 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00007f8cc4387057 RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007fffb1aa4c50 RBP: 00007fffb1aa4c50 R08: 0000000000000000 R09: 0000000000000000 R10: 00000000ffffffff R11: 0000000000000246 R12: 00007fffb1aa5cd0 R13: 00007f8cc44018f4 R14: 00007fffb1aa5d10 R15: 0000000000000001 Modules linked in: CR2: 0000000000000170 ---[ end trace 0000000000000000 ]--- RIP: 0010:arch_atomic_inc_return include/linux/atomic/atomic-arch-fallback.h:440 [inline] RIP: 0010:atomic_inc_return include/linux/atomic/atomic-instrumented.h:199 [inline] RIP: 0010:ihold+0x25/0x60 fs/inode.c:452 Code: 00 00 00 00 00 55 48 89 e5 41 56 53 49 89 fe e8 b1 59 a8 ff 49 8d be 70 01 00 00 be 04 00 00 00 e8 00 cf ef ff bb 01 00 00 00 41 0f c1 9e 70 01 00 00 ff c3 bf 02 00 00 00 89 de e8 34 5d a8 RSP: 0018:ffffc90001337c30 EFLAGS: 00010202 RAX: 0000000000000001 RBX: 0000000000000001 RCX: ffffffff81cd2d10 RDX: 0000000000000001 RSI: 0000000000000004 RDI: 0000000000000170 RBP: ffffc90001337c40 R08: ffffffff81c99044 R09: fffff52000266f6d R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff110262fb271 R13: ffff8881181edee0 R14: 0000000000000000 R15: 1ffff1102303dbe2 FS: 000055555a1dc500(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000170 CR3: 000000012f407000 CR4: 00000000003506a0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 00 00 add %al,(%rax) 2: 00 00 add %al,(%rax) 4: 00 55 48 add %dl,0x48(%rbp) 7: 89 e5 mov %esp,%ebp 9: 41 56 push %r14 b: 53 push %rbx c: 49 89 fe mov %rdi,%r14 f: e8 b1 59 a8 ff call 0xffa859c5 14: 49 8d be 70 01 00 00 lea 0x170(%r14),%rdi 1b: be 04 00 00 00 mov $0x4,%esi 20: e8 00 cf ef ff call 0xffefcf25 25: bb 01 00 00 00 mov $0x1,%ebx * 2a: f0 41 0f c1 9e 70 01 lock xadd %ebx,0x170(%r14) <-- trapping instruction 31: 00 00 33: ff c3 inc %ebx 35: bf 02 00 00 00 mov $0x2,%edi 3a: 89 de mov %ebx,%esi 3c: e8 .byte 0xe8 3d: 34 5d xor $0x5d,%al 3f: a8 .byte 0xa8