[v5.15] BUG: unable to handle kernel paging request in prepare_for_delete_or_cut

0 views
Skip to first unread message

syzbot

unread,
Apr 19, 2024, 9:57:22 PM (14 days ago) Apr 19
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: c52b9710c83d Linux 5.15.156
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=11d3eabf180000
kernel config: https://syzkaller.appspot.com/x/.config?x=41e09ec50c6bb4e4
dashboard link: https://syzkaller.appspot.com/bug?extid=26cc546e8c4db4945f38
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=162b55f7180000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1347d557180000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/586695cf1548/disk-c52b9710.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/10a68b27874f/vmlinux-c52b9710.xz
kernel image: https://storage.googleapis.com/syzbot-assets/610e1be513a8/Image-c52b9710.gz.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/36f0f3a44de1/mount_0.gz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+26cc54...@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
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: 3961 Comm: syz-executor100 Not tainted 5.15.156-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
pstate: 80401005 (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 : ffff80001cb86e40
x29: ffff80001cb86f80 x28: 1ffff00003970ec8 x27: ffff700003970de0
x26: ffff80001cb87648 x25: ffff80001cb87640 x24: dfff800000000000
x23: dfff800000000000 x22: ffff80001cb876e0 x21: 0000000000000000
x20: 0000000000000028 x19: ffff80001cb87660 x18: 0000000000000000
x17: 0000000000000000 x16: ffff800008cdccb0 x15: 00000000fffffffe
x14: ffff0000c2fe3680 x13: 0000000000ff0100 x12: ffff80001cb86f00
x11: 0000000000000000 x10: 0000000000000000 x9 : ffff0000c2fe3680
x8 : 0000000000000005 x7 : 0000000000000001 x6 : 0000000000000000
x5 : ffff80001cb874b0 x4 : ffff80001cb874c0 x3 : ffff80001cb876e0
x2 : ffff80001cb87640 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/0x1c84 fs/reiserfs/stree.c:1682
reiserfs_do_truncate+0x89c/0x11c8 fs/reiserfs/stree.c:1973
reiserfs_truncate_file+0x3ac/0x6f0 fs/reiserfs/inode.c:2318
reiserfs_file_release+0x710/0x884 fs/reiserfs/file.c:109
__fput+0x30c/0x7f0 fs/file_table.c:280
____fput+0x20/0x30 fs/file_table.c:308
task_work_run+0x130/0x1e4 kernel/task_work.c:164
tracehook_notify_resume include/linux/tracehook.h:189 [inline]
do_notify_resume+0x262c/0x32b8 arch/arm64/kernel/signal.c:946
prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:133 [inline]
exit_to_user_mode arch/arm64/kernel/entry-common.c:138 [inline]
el0_svc+0xfc/0x1f0 arch/arm64/kernel/entry-common.c:609
el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Code: 35008b48 9100a294 b9800275 d343fe88 (38786908)
---[ end trace 0607b4a582eb8e7f ]---
----------------
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