syzbot
general protection fault in __pte_offset_map_lock (2)
Status:
auto-obsoleted due to no activity on 2025/10/22 13:38
Subsystems:
mm
[Documentation on labels]
Reported-by: syzbot+45ad2baf16fce6bc81f3@syzkaller.appspotmail.com
First crash: 373d, last: 363d
▶
▼
Last patch testing requests (2)
Sample crash report:
input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input27
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000003: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
CPU: 1 UID: 0 PID: 19512 Comm: syz.3.2907 Not tainted 6.17.0-rc1-syzkaller-00016-g8742b2d8935f #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:kasan_byte_accessible+0x15/0x30 mm/kasan/generic.c:199
Code: 00 00 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 66 0f 1f 00 48 b8 00 00 00 00 00 fc ff df 48 c1 ef 03 48 01 c7 <0f> b6 07 3c 07 0f 96 c0 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00
RSP: 0018:ffffc9000bc771b8 EFLAGS: 00010286
RAX: dffffc0000000000 RBX: 0000000000000018 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff8b92e32e RDI: dffffc0000000003
RBP: 0000000000000018 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff8b92e32e
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
FS: 00007f745108f6c0(0000) GS:ffff8881247c6000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f1eacc19d58 CR3: 000000005b95a000 CR4: 00000000003526f0
Call Trace:
<TASK>
__kasan_check_byte+0x13/0x50 mm/kasan/common.c:567
kasan_check_byte include/linux/kasan.h:399 [inline]
lock_acquire kernel/locking/lockdep.c:5842 [inline]
lock_acquire+0xfc/0x350 kernel/locking/lockdep.c:5825
__raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
_raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154
spin_lock include/linux/spinlock.h:351 [inline]
__pte_offset_map_lock+0x10f/0x310 mm/pgtable-generic.c:401
pte_offset_map_lock include/linux/mm.h:3029 [inline]
zap_pte_range mm/memory.c:1712 [inline]
zap_pmd_range mm/memory.c:1818 [inline]
zap_pud_range mm/memory.c:1847 [inline]
zap_p4d_range mm/memory.c:1868 [inline]
unmap_page_range+0xacf/0x42c0 mm/memory.c:1889
unmap_single_vma.constprop.0+0x153/0x240 mm/memory.c:1932
unmap_vmas+0x218/0x470 mm/memory.c:1976
vms_clear_ptes+0x41f/0x770 mm/vma.c:1228
vms_clean_up_area mm/vma.c:1247 [inline]
__mmap_prepare mm/vma.c:2396 [inline]
__mmap_region+0x5e1/0x27b0 mm/vma.c:2651
mmap_region+0x1ab/0x3f0 mm/vma.c:2739
do_mmap+0xa3e/0x1210 mm/mmap.c:558
vm_mmap_pgoff+0x29e/0x470 mm/util.c:580
ksys_mmap_pgoff+0x7d/0x5c0 mm/mmap.c:604
__do_sys_mmap arch/x86/kernel/sys_x86_64.c:89 [inline]
__se_sys_mmap arch/x86/kernel/sys_x86_64.c:82 [inline]
__x64_sys_mmap+0x125/0x190 arch/x86/kernel/sys_x86_64.c:82
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xcd/0x490 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f745018ebe9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f745108f038 EFLAGS: 00000246 ORIG_RAX: 0000000000000009
RAX: ffffffffffffffda RBX: 00007f74503b6090 RCX: 00007f745018ebe9
RDX: 00000000000000df RSI: 0000000004020009 RDI: 0000000000000000
RBP: 00007f7450211e19 R08: 0000000000000401 R09: 0000000000000000
R10: 0000000000000eb1 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f74503b6128 R14: 00007f74503b6090 R15: 00007ffcc0929048
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:kasan_byte_accessible+0x15/0x30 mm/kasan/generic.c:199
Code: 00 00 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 66 0f 1f 00 48 b8 00 00 00 00 00 fc ff df 48 c1 ef 03 48 01 c7 <0f> b6 07 3c 07 0f 96 c0 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00
RSP: 0018:ffffc9000bc771b8 EFLAGS: 00010286
RAX: dffffc0000000000 RBX: 0000000000000018 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff8b92e32e RDI: dffffc0000000003
RBP: 0000000000000018 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffffffff8b92e32e
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
FS: 00007f745108f6c0(0000) GS:ffff8881247c6000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f1eacc19d58 CR3: 000000005b95a000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
0: 00 00 add %al,(%rax)
2: 0f 1f 00 nopl (%rax)
5: 90 nop
6: 90 nop
7: 90 nop
8: 90 nop
9: 90 nop
a: 90 nop
b: 90 nop
c: 90 nop
d: 90 nop
e: 90 nop
f: 90 nop
10: 90 nop
11: 90 nop
12: 90 nop
13: 90 nop
14: 90 nop
15: 66 0f 1f 00 nopw (%rax)
19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
20: fc ff df
23: 48 c1 ef 03 shr $0x3,%rdi
27: 48 01 c7 add %rax,%rdi
* 2a: 0f b6 07 movzbl (%rdi),%eax <-- trapping instruction
2d: 3c 07 cmp $0x7,%al
2f: 0f 96 c0 setbe %al
32: c3 ret
33: cc int3
34: cc int3
35: cc int3
36: cc int3
37: 66 data16
38: 66 data16
39: 2e cs
3a: 0f .byte 0xf
3b: 1f (bad)
3c: 84 00 test %al,(%rax)
* Struck through repros no longer work on HEAD.