[v6.1] BUG: unable to handle kernel paging request in prepare_for_delete_or_cut

0 views
Skip to first unread message

syzbot

unread,
Mar 1, 2024, 8:50:29 PMMar 1
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: a3eb3a74aa8c Linux 6.1.80
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=16f50516180000
kernel config: https://syzkaller.appspot.com/x/.config?x=40fd5f1c69352c2d
dashboard link: https://syzkaller.appspot.com/bug?extid=ac366b1d501fa8852acc
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
userspace arch: arm64
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1787cc6a180000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=15431c6a180000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/fcf176340788/disk-a3eb3a74.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/31d4ae9bb2ff/vmlinux-a3eb3a74.xz
kernel image: https://storage.googleapis.com/syzbot-assets/cb907876b80a/Image-a3eb3a74.gz.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/57430b47ebe9/mount_0.gz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+ac366b...@syzkaller.appspotmail.com

REISERFS warning: reiserfs-5093 is_leaf: item entry count seems wrong *3.5*[2 1 0(1) DIR], item_len 35, item_location 4029, free_space(entry_count) 2
REISERFS error (device loop0): vs-5150 search_by_key: invalid format found in block 533. Fsck?
Unable to handle kernel paging request at virtual address dfff800000000005
KASAN: null-ptr-deref in range [0x0000000000000028-0x000000000000002f]
Mem abort info:
ESR = 0x0000000096000006
EC = 0x25: DABT (current EL), IL = 32 bits
SET = 0, FnV = 0
EA = 0, S1PTW = 0
FSC = 0x06: level 2 translation fault
Data abort info:
ISV = 0, ISS = 0x00000006
CM = 0, WnR = 0
[dfff800000000005] address between user and kernel address ranges
Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 4222 Comm: syz-executor167 Not tainted 6.1.80-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : reiserfs_node_data fs/reiserfs/reiserfs.h:2184 [inline]
pc : item_head fs/reiserfs/reiserfs.h:2200 [inline]
pc : tp_item_head fs/reiserfs/reiserfs.h:2226 [inline]
pc : prepare_for_delete_or_cut+0x130/0x1a34 fs/reiserfs/stree.c:1050
lr : tp_item_head fs/reiserfs/reiserfs.h:2226 [inline]
lr : prepare_for_delete_or_cut+0xf0/0x1a34 fs/reiserfs/stree.c:1050
sp : ffff80001dc66da0
x29: ffff80001dc66ee0 x28: 1ffff00003b8ceb4 x27: ffff700003b8cdcc
x26: ffff80001dc675a8 x25: ffff80001dc675a0 x24: dfff800000000000
x23: dfff800000000000 x22: ffff80001dc67640 x21: 0000000000000000
x20: 0000000000000028 x19: ffff80001dc675c0 x18: ffff80001dc66160
x17: 6f662064696c6176 x16: ffff8000120942c0 x15: 0000000000000000
x14: 00000000fffffffe x13: ffff0000da2eb780 x12: ffff80001dc66e60
x11: 0000000000ff0100 x10: 0000000000000000 x9 : ffff800008d9ffc0
x8 : 0000000000000005 x7 : 0000000000000001 x6 : 0000000000000000
x5 : ffff80001dc67410 x4 : ffff80001dc67420 x3 : ffff80001dc67640
x2 : ffff80001dc675a0 x1 : 0000000000000001 x0 : 0000000000000008
Call trace:
reiserfs_node_data fs/reiserfs/reiserfs.h:2184 [inline]
item_head fs/reiserfs/reiserfs.h:2200 [inline]
tp_item_head fs/reiserfs/reiserfs.h:2226 [inline]
prepare_for_delete_or_cut+0x130/0x1a34 fs/reiserfs/stree.c:1050
reiserfs_cut_from_item+0x2ac/0x1c98 fs/reiserfs/stree.c:1682
reiserfs_do_truncate+0x89c/0x11c8 fs/reiserfs/stree.c:1973
reiserfs_truncate_file+0x510/0xb1c fs/reiserfs/inode.c:2310
reiserfs_file_release+0x710/0x884 fs/reiserfs/file.c:109
__fput+0x30c/0x7bc fs/file_table.c:320
____fput+0x20/0x30 fs/file_table.c:348
task_work_run+0x240/0x2f0 kernel/task_work.c:179
resume_user_mode_work include/linux/resume_user_mode.h:49 [inline]
do_notify_resume+0x2148/0x3474 arch/arm64/kernel/signal.c:1132
prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:137 [inline]
exit_to_user_mode arch/arm64/kernel/entry-common.c:142 [inline]
el0_svc+0x9c/0x168 arch/arm64/kernel/entry-common.c:638
el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585
Code: 35008b48 9100a294 b9800275 d343fe88 (38786908)
---[ end trace 0000000000000000 ]---
----------------
Code disassembly (best guess):
0: 35008b48 cbnz w8, 0x1168
4: 9100a294 add x20, x20, #0x28
8: b9800275 ldrsw x21, [x19]
c: d343fe88 lsr x8, x20, #3
* 10: 38786908 ldrb w8, [x8, x24] <-- trapping instruction


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages