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

0 views
Skip to first unread message

syzbot

unread,
Apr 9, 2023, 2:13:50 AM4/9/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: d86dfc4d95cd Linux 5.15.106
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=173b85b5c80000
kernel config: https://syzkaller.appspot.com/x/.config?x=639d55ab480652c5
dashboard link: https://syzkaller.appspot.com/bug?extid=3857bdaaa566e5fa2144
compiler: Debian clang version 15.0.7, GNU ld (GNU Binutils for Debian) 2.35.2
userspace arch: arm64

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/b2a94107dd69/disk-d86dfc4d.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/398f8d288cb9/vmlinux-d86dfc4d.xz
kernel image: https://storage.googleapis.com/syzbot-assets/9b790c7e7c8c/Image-d86dfc4d.gz.xz

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

Unable to handle kernel paging request at virtual address dfff800000000039
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
[dfff800000000039] address between user and kernel address ranges
Internal error: Oops: 96000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 4462 Comm: syz-executor.5 Not tainted 5.15.106-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/02/2023
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : errseq_set+0x30/0x198 lib/errseq.c:72
lr : errseq_set+0x24/0x198 lib/errseq.c:60
sp : ffff80001f8466f0
x29: ffff80001f8466f0 x28: dfff800000000000 x27: ffff80001f8468e0
x26: fffffc000491f880 x25: 0000000000000000 x24: 1fffff8000923f11
x23: 0000000000003000 x22: 0000000000000000 x21: 00000000ffffff8b

x20: 00000000ffffff8b
x19: 00000000000001c8
x18: 1fffe000368ffd8e
x17: 1fffe000368ffd8e x16: ffff8000082e9784 x15: ffff80001496eda0
x14: 1ffff0000291a06a x13: ffffffffffffffff x12: 0000000000000000
x11: ff8080000a95c4f0 x10: 0000000000000000 x9 : 0000000000000039
x8 : dfff800000000000 x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000080 x4 : 0000000000000000
x3 : ffff800008045814

x2 : 0000000000000007
x1 : 00000000ffffff8b x0 : 00000000000001c8
Call trace:
errseq_set+0x30/0x198 lib/errseq.c:72
__filemap_set_wb_err+0x3c/0x3a4 mm/filemap.c:730
mapping_set_error include/linux/pagemap.h:60 [inline]
iomap_writepage_map fs/iomap/buffered-io.c:1383 [inline]
iomap_do_writepage+0x19e0/0x1db8 fs/iomap/buffered-io.c:1485
write_cache_pages+0x878/0xf58 mm/page-writeback.c:2255
iomap_writepages+0x6c/0x1f4 fs/iomap/buffered-io.c:1516
xfs_vm_writepages+0x124/0x180 fs/xfs/xfs_aops.c:488
do_writepages+0x39c/0x5ec mm/page-writeback.c:2364
filemap_fdatawrite_wbc+0x1c8/0x228 mm/filemap.c:400
__filemap_fdatawrite_range mm/filemap.c:433 [inline]
file_write_and_wait_range+0x18c/0x274 mm/filemap.c:810
xfs_file_fsync+0x1a8/0x930 fs/xfs/xfs_file.c:182
vfs_fsync_range+0x168/0x188 fs/sync.c:188
generic_write_sync include/linux/fs.h:2913 [inline]
xfs_file_buffered_write+0x998/0xb08 fs/xfs/xfs_file.c:793
xfs_file_write_iter+0x2b4/0x604 fs/xfs/xfs_file.c:833
do_iter_readv_writev+0x420/0x5f8
do_iter_write+0x1b8/0x664 fs/read_write.c:855
vfs_iter_write+0x88/0xac fs/read_write.c:896
iter_file_splice_write+0x618/0xc48 fs/splice.c:689
do_splice_from fs/splice.c:767 [inline]
direct_splice_actor+0xe4/0x1c0 fs/splice.c:936
splice_direct_to_actor+0x408/0x9a0 fs/splice.c:891
do_splice_direct+0x1f4/0x334 fs/splice.c:979
do_sendfile+0x4bc/0xc70 fs/read_write.c:1249
__do_sys_sendfile64 fs/read_write.c:1317 [inline]
__se_sys_sendfile64 fs/read_write.c:1303 [inline]
__arm64_sys_sendfile64+0x160/0x408 fs/read_write.c:1303
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:596
el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:614
el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Code: 976d8d4f d2d00008 d343fe69 f2fbffe8 (38e86928)
---[ end trace 74d17be1947556ef ]---
----------------
Code disassembly (best guess):
0: 976d8d4f bl 0xfffffffffdb6353c
4: d2d00008 mov x8, #0x800000000000 // #140737488355328
8: d343fe69 lsr x9, x19, #3
c: f2fbffe8 movk x8, #0xdfff, lsl #48
* 10: 38e86928 ldrsb w8, [x9, x8] <-- 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.

syzbot

unread,
May 30, 2023, 2:34:56 AM5/30/23
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 1fe619a7d252 Linux 5.15.113
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=16243d85280000
kernel config: https://syzkaller.appspot.com/x/.config?x=8f10ee30ae29b021
dashboard link: https://syzkaller.appspot.com/bug?extid=3857bdaaa566e5fa2144
compiler: Debian clang version 15.0.7, GNU ld (GNU Binutils for Debian) 2.35.2
userspace arch: arm64
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=10d38736280000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=156bf4cd280000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/1b707a1e1816/disk-1fe619a7.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/19cc598a8bbe/vmlinux-1fe619a7.xz
kernel image: https://storage.googleapis.com/syzbot-assets/a6cf7269bae5/Image-1fe619a7.gz.xz
mounted in repro: https://storage.googleapis.com/syzbot-assets/cd62a95fb756/mount_0.gz

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

Unable to handle kernel paging request at virtual address dfff800000000039
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
[dfff800000000039] address between user and kernel address ranges
Internal error: Oops: 96000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 1 PID: 3974 Comm: syz-executor359 Not tainted 5.15.113-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/28/2023
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : errseq_set+0x30/0x198 lib/errseq.c:72
lr : errseq_set+0x24/0x198 lib/errseq.c:60
sp : ffff80001cca6e10
x29: ffff80001cca6e10 x28: dfff800000000000 x27: ffff80001cca7000
x26: fffffc0005e3d600
x25: 0000000000000000
x24: 1fffff8000bc7ac1

x23: 0000000000000000 x22: fffffc00032ba808 x21: 00000000ffffff8b
x20: 00000000ffffff8b x19: 00000000000001c8 x18: 1fffe0003690378e
x17: 1fffe0003690378e x16: ffff8000082ea770 x15: ffff80001497f100
x14: 1ffff0000291c06a
x13: ffffffffffffffff x12: 0000000000000000
x11: ff8080000a9635b0 x10: 0000000000000000 x9 : 0000000000000039
x8 : dfff800000000000 x7 : 0000000000000000 x6 : 0000000000000000
x5 : 0000000000000080 x4 : 0000000000000000 x3 : ffff80000825722c
x2 : 0000000000000001 x1 : 00000000ffffff8b x0 : 00000000000001c8
Call trace:
errseq_set+0x30/0x198 lib/errseq.c:72
__filemap_set_wb_err+0x3c/0x3a4 mm/filemap.c:730
mapping_set_error include/linux/pagemap.h:60 [inline]
iomap_writepage_map fs/iomap/buffered-io.c:1383 [inline]
iomap_do_writepage+0x19e0/0x1db8 fs/iomap/buffered-io.c:1485
write_cache_pages+0x878/0xf58 mm/page-writeback.c:2255
iomap_writepages+0x6c/0x1f4 fs/iomap/buffered-io.c:1516
xfs_vm_writepages+0x124/0x180 fs/xfs/xfs_aops.c:488
do_writepages+0x39c/0x5ec mm/page-writeback.c:2364
filemap_fdatawrite_wbc+0x1c8/0x228 mm/filemap.c:400
__filemap_fdatawrite_range mm/filemap.c:433 [inline]
file_write_and_wait_range+0x18c/0x274 mm/filemap.c:810
xfs_file_fsync+0x1a8/0x930 fs/xfs/xfs_file.c:182
vfs_fsync_range+0x168/0x188 fs/sync.c:188
generic_write_sync include/linux/fs.h:2913 [inline]
xfs_file_buffered_write+0x998/0xb08 fs/xfs/xfs_file.c:793
xfs_file_write_iter+0x2b4/0x604 fs/xfs/xfs_file.c:833
call_write_iter include/linux/fs.h:2103 [inline]
new_sync_write fs/read_write.c:507 [inline]
vfs_write+0x87c/0xb3c fs/read_write.c:594
ksys_write+0x15c/0x26c fs/read_write.c:647
__do_sys_write fs/read_write.c:659 [inline]
__se_sys_write fs/read_write.c:656 [inline]
__arm64_sys_write+0x7c/0x90 fs/read_write.c:656
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:596
el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:614
el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Code: 976d7ed4 d2d00008 d343fe69 f2fbffe8 (38e86928)
---[ end trace 5ce14fa257a80f5c ]---
----------------
Code disassembly (best guess):
0: 976d7ed4 bl 0xfffffffffdb5fb50
4: d2d00008 mov x8, #0x800000000000 // #140737488355328
8: d343fe69 lsr x9, x19, #3
c: f2fbffe8 movk x8, #0xdfff, lsl #48
* 10: 38e86928 ldrsb w8, [x9, x8] <-- trapping instruction


---
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.
Reply all
Reply to author
Forward
0 new messages