syzbot
general protection fault in vfs_rename
Status:
upstream: reported C repro on 2023/10/22 15:59
Bug presence:
origin:downstream
[Documentation on labels]
Reported-by: syzbot+6322832df18f369c5366@syzkaller.appspotmail.com
First crash: 1008d, last: 5d08h
▶
▼
Last patch testing requests (10)
▶
▼
Fix bisection attempts (7)
Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000000008: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000040-0x0000000000000047]
CPU: 0 PID: 378 Comm: syz.2.17 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026
RIP: 0010:vfs_rename+0x1b0/0x10f0 fs/namei.c:4770
Code: 30 48 89 d8 48 c1 e8 03 42 80 3c 20 00 74 08 48 89 df e8 73 a0 f3 ff 48 8b 1b 48 8b 44 24 30 4c 8d 70 30 4d 89 f7 49 c1 ef 03 <43> 80 3c 27 00 74 08 4c 89 f7 e8 51 a0 f3 ff 48 89 5c 24 50 4c 89
RSP: 0018:ffffc90000e57b60 EFLAGS: 00010202
RAX: 0000000000000010 RBX: ffff888123f39980 RCX: 0000000000000000
RDX: ffff888113860000 RSI: 0000000000400000 RDI: 0000000000200000
RBP: ffffc90000e57cd0 R08: ffffc90000e57bc7 R09: 1ffff920001caf78
R10: dffffc0000000000 R11: fffff520001caf79 R12: dffffc0000000000
R13: ffff888123f38880 R14: 0000000000000040 R15: 0000000000000008
FS: 00007f15fb17f6c0(0000) GS:ffff8881f6e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f15fb17eff8 CR3: 000000012eebd000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
do_renameat2+0x826/0xfd0 fs/namei.c:5034
__do_sys_rename fs/namei.c:5080 [inline]
__se_sys_rename fs/namei.c:5078 [inline]
__x64_sys_rename+0x86/0x90 fs/namei.c:5078
x64_sys_call+0x300/0x9a0 arch/x86/include/generated/asm/syscalls_64.h:83
do_syscall_x64 arch/x86/entry/common.c:46 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:76
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f15fa39ce59
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f15fb17f028 EFLAGS: 00000246 ORIG_RAX: 0000000000000052
RAX: ffffffffffffffda RBX: 00007f15fa616180 RCX: 00007f15fa39ce59
RDX: 0000000000000000 RSI: 0000200000000140 RDI: 0000200000000100
RBP: 00007f15fa432d6f R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f15fa616218 R14: 00007f15fa616180 R15: 00007ffec429c118
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:vfs_rename+0x1b0/0x10f0 fs/namei.c:4770
Code: 30 48 89 d8 48 c1 e8 03 42 80 3c 20 00 74 08 48 89 df e8 73 a0 f3 ff 48 8b 1b 48 8b 44 24 30 4c 8d 70 30 4d 89 f7 49 c1 ef 03 <43> 80 3c 27 00 74 08 4c 89 f7 e8 51 a0 f3 ff 48 89 5c 24 50 4c 89
RSP: 0018:ffffc90000e57b60 EFLAGS: 00010202
RAX: 0000000000000010 RBX: ffff888123f39980 RCX: 0000000000000000
RDX: ffff888113860000 RSI: 0000000000400000 RDI: 0000000000200000
RBP: ffffc90000e57cd0 R08: ffffc90000e57bc7 R09: 1ffff920001caf78
R10: dffffc0000000000 R11: fffff520001caf79 R12: dffffc0000000000
R13: ffff888123f38880 R14: 0000000000000040 R15: 0000000000000008
FS: 00007f15fb17f6c0(0000) GS:ffff8881f6e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f15fb17eff8 CR3: 000000012eebd000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 30 48 89 xor %cl,-0x77(%rax)
3: d8 48 c1 fmuls -0x3f(%rax)
6: e8 03 42 80 3c call 0x3c80420e
b: 20 00 and %al,(%rax)
d: 74 08 je 0x17
f: 48 89 df mov %rbx,%rdi
12: e8 73 a0 f3 ff call 0xfff3a08a
17: 48 8b 1b mov (%rbx),%rbx
1a: 48 8b 44 24 30 mov 0x30(%rsp),%rax
1f: 4c 8d 70 30 lea 0x30(%rax),%r14
23: 4d 89 f7 mov %r14,%r15
26: 49 c1 ef 03 shr $0x3,%r15
* 2a: 43 80 3c 27 00 cmpb $0x0,(%r15,%r12,1) <-- trapping instruction
2f: 74 08 je 0x39
31: 4c 89 f7 mov %r14,%rdi
34: e8 51 a0 f3 ff call 0xfff3a08a
39: 48 89 5c 24 50 mov %rbx,0x50(%rsp)
3e: 4c rex.WR
3f: 89 .byte 0x89
* Struck through repros no longer work on HEAD.