RSP: 002b:00007fff80e38e38 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00007f10d61baa47
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007fff80e38ef0
RBP: 00007fff80e38ef0 R08: 0000000000000000 R09: 0000000000000000
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007fff80e39f70
R13: 00007f10d622c5fc R14: 0000000000369f0c R15: 00007fff80e39fb0
---[ end trace 90ad3d7b5759ef21 ]---
==================================================================
BUG: KASAN: null-ptr-deref in instrument_atomic_read_write include/linux/instrumented.h:101 [inline]
BUG: KASAN: null-ptr-deref in atomic_inc_return include/linux/atomic/atomic-instrumented.h:188 [inline]
BUG: KASAN: null-ptr-deref in ihold+0x20/0x60 fs/inode.c:426
Write of size 4 at addr 0000000000000170 by task syz-executor/11919
CPU: 0 PID: 11919 Comm: syz-executor Tainted: G W 5.15.167-syzkaller-00002-g3bfe08931bff #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x151/0x1c0 lib/dump_stack.c:106
__kasan_report mm/kasan/report.c:431 [inline]
kasan_report+0x16f/0x1c0 mm/kasan/report.c:444
kasan_check_range+0x293/0x2a0 mm/kasan/generic.c:189
__kasan_check_write+0x14/0x20 mm/kasan/shadow.c:37
instrument_atomic_read_write include/linux/instrumented.h:101 [inline]
atomic_inc_return include/linux/atomic/atomic-instrumented.h:188 [inline]
ihold+0x20/0x60 fs/inode.c:426
d_delete_notify include/linux/fsnotify.h:275 [inline]
vfs_rmdir+0x201/0x470 fs/namei.c:4162
incfs_kill_sb+0x113/0x230 fs/incfs/vfs.c:1989
deactivate_locked_super+0xad/0x110 fs/super.c:335
deactivate_super+0xbe/0xf0 fs/super.c:366
cleanup_mnt+0x45c/0x510 fs/namespace.c:1143
__cleanup_mnt+0x19/0x20 fs/namespace.c:1150
task_work_run+0x129/0x190 kernel/task_work.c:188
tracehook_notify_resume include/linux/tracehook.h:189 [inline]
exit_to_user_mode_loop+0xc4/0xe0 kernel/entry/common.c:181
exit_to_user_mode_prepare+0x5a/0xa0 kernel/entry/common.c:214
__syscall_exit_to_user_mode_work kernel/entry/common.c:296 [inline]
syscall_exit_to_user_mode+0x26/0x160 kernel/entry/common.c:307
do_syscall_64+0x47/0xb0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f10d61baa47
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:00007fff80e38e38 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00007f10d61baa47
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007fff80e38ef0
RBP: 00007fff80e38ef0 R08: 0000000000000000 R09: 0000000000000000
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007fff80e39f70
R13: 00007f10d622c5fc R14: 0000000000369f0c R15: 00007fff80e39fb0
==================================================================
BUG: kernel NULL pointer dereference, address: 0000000000000170
#PF: supervisor write access in kernel mode
#PF: error_code(0x0002) - not-present page
PGD 10ed06067 P4D 10ed06067 PUD 0
Oops: 0002 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 11919 Comm: syz-executor Tainted: G B W 5.15.167-syzkaller-00002-g3bfe08931bff #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:370 [inline]
RIP: 0010:atomic_inc_return include/linux/atomic/atomic-instrumented.h:189 [inline]
RIP: 0010:ihold+0x25/0x60 fs/inode.c:426
Code: 00 00 00 00 00 55 48 89 e5 41 56 53 49 89 fe e8 c1 92 ae ff 49 8d be 70 01 00 00 be 04 00 00 00 e8 50 ed f0 ff bb 01 00 00 00 41 0f c1 9e 70 01 00 00 ff c3 bf 02 00 00 00 89 de e8 44 96 ae
RSP: 0018:ffffc90000aa7cc8 EFLAGS: 00010246
RAX: ffff888157729300 RBX: 0000000000000001 RCX: ffff8881577293c0
RDX: 0000000000000000 RSI: 0000000000000286 RDI: 00000000ffffffff
RBP: ffffc90000aa7cd8 R08: ffffffff8141997b R09: 0000000000000003
R10: fffffbfff0e9a24c R11: dffffc0000000001 R12: dffffc0000000000
R13: ffff88813559fee0 R14: 0000000000000000 R15: 1ffff11026ab3fe2
FS: 00005555646bb500(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000170 CR3: 000000010baad000 CR4: 00000000003526b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
d_delete_notify include/linux/fsnotify.h:275 [inline]
vfs_rmdir+0x201/0x470 fs/namei.c:4162
incfs_kill_sb+0x113/0x230 fs/incfs/vfs.c:1989
deactivate_locked_super+0xad/0x110 fs/super.c:335
deactivate_super+0xbe/0xf0 fs/super.c:366
cleanup_mnt+0x45c/0x510 fs/namespace.c:1143
__cleanup_mnt+0x19/0x20 fs/namespace.c:1150
task_work_run+0x129/0x190 kernel/task_work.c:188
tracehook_notify_resume include/linux/tracehook.h:189 [inline]
exit_to_user_mode_loop+0xc4/0xe0 kernel/entry/common.c:181
exit_to_user_mode_prepare+0x5a/0xa0 kernel/entry/common.c:214
__syscall_exit_to_user_mode_work kernel/entry/common.c:296 [inline]
syscall_exit_to_user_mode+0x26/0x160 kernel/entry/common.c:307
do_syscall_64+0x47/0xb0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f10d61baa47
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:00007fff80e38e38 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00007f10d61baa47
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007fff80e38ef0
RBP: 00007fff80e38ef0 R08: 0000000000000000 R09: 0000000000000000
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007fff80e39f70
R13: 00007f10d622c5fc R14: 0000000000369f0c R15: 00007fff80e39fb0
Modules linked in:
CR2: 0000000000000170
---[ end trace 90ad3d7b5759ef22 ]---
RIP: 0010:arch_atomic_inc_return include/linux/atomic/atomic-arch-fallback.h:370 [inline]
RIP: 0010:atomic_inc_return include/linux/atomic/atomic-instrumented.h:189 [inline]
RIP: 0010:ihold+0x25/0x60 fs/inode.c:426
Code: 00 00 00 00 00 55 48 89 e5 41 56 53 49 89 fe e8 c1 92 ae ff 49 8d be 70 01 00 00 be 04 00 00 00 e8 50 ed f0 ff bb 01 00 00 00 41 0f c1 9e 70 01 00 00 ff c3 bf 02 00 00 00 89 de e8 44 96 ae
RSP: 0018:ffffc90000aa7cc8 EFLAGS: 00010246
RAX: ffff888157729300 RBX: 0000000000000001 RCX: ffff8881577293c0
RDX: 0000000000000000 RSI: 0000000000000286 RDI: 00000000ffffffff
RBP: ffffc90000aa7cd8 R08: ffffffff8141997b R09: 0000000000000003
R10: fffffbfff0e9a24c R11: dffffc0000000001 R12: dffffc0000000000
R13: ffff88813559fee0 R14: 0000000000000000 R15: 1ffff11026ab3fe2
FS: 00005555646bb500(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000170 CR3: 000000010baad000 CR4: 00000000003526b0
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 c1 92 ae ff call 0xffae92d5
14: 49 8d be 70 01 00 00 lea 0x170(%r14),%rdi
1b: be 04 00 00 00 mov $0x4,%esi
20: e8 50 ed f0 ff call 0xfff0ed75
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: 44 96 rex.R xchg %eax,%esi
3f: ae scas %es:(%rdi),%al