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

1 view
Skip to first unread message

syzbot

unread,
Mar 8, 2023, 6:48:54 PM3/8/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: d9b4a0c83a2d Linux 5.15.98
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=10d82dd4c80000
kernel config: https://syzkaller.appspot.com/x/.config?x=b57cfa804330c3b7
dashboard link: https://syzkaller.appspot.com/bug?extid=62124a000ba4d070d9dc
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=13868bd4c80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=11212288c80000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/8088989394e3/disk-d9b4a0c8.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/2651d6753959/vmlinux-d9b4a0c8.xz
kernel image: https://storage.googleapis.com/syzbot-assets/f3fa3f994f9a/Image-d9b4a0c8.gz.xz

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

Unable to handle kernel paging request at virtual address dfff800000000007
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
[dfff800000000007] address between user and kernel address ranges
Internal error: Oops: 96000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 0 PID: 6011 Comm: syz-executor243 Not tainted 5.15.98-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 : list_add_tail include/linux/list.h:100 [inline]
pc : sctp_outq_tail_data net/sctp/outqueue.c:91 [inline]
pc : sctp_outq_tail+0x270/0xa1c net/sctp/outqueue.c:299
lr : sctp_stream_out include/net/sctp/structs.h:1493 [inline]
lr : sctp_outq_tail_data net/sctp/outqueue.c:90 [inline]
lr : sctp_outq_tail+0x244/0xa1c net/sctp/outqueue.c:299
sp : ffff800020527290
x29: ffff8000205272a0 x28: 0000000000000007 x27: dfff800000000000
x26: 0000000000000038 x25: 0000000000000030 x24: ffff0000e3212b90
x23: ffff0000e3212b58 x22: ffff0000e3212ba0 x21: ffff0000e3212b40
x20: ffff0000e0c987f0 x19: 1fffe0001c642574 x18: 0000000000000000
x17: ff808000110536ac x16: ffff8000084c28f4 x15: ffff8000110536ac
x14: 0000000000000040 x13: ffffffffffffffff x12: 0000000000000000
x11: ff8080000a9a25b8 x10: 0000000000000000 x9 : ffff80000a9a25b8
x8 : 0000000000000000 x7 : 0000000000000000 x6 : 000000000000003f
x5 : ffff800020527420 x4 : ffff0000e0ad1400 x3 : ffff800011010344
x2 : ffff0000e0c987f8 x1 : 00000000000000c0 x0 : ffff0000e314b0c0
Call trace:
list_add_tail include/linux/list.h:100 [inline]
sctp_outq_tail_data net/sctp/outqueue.c:91 [inline]
sctp_outq_tail+0x270/0xa1c net/sctp/outqueue.c:299
sctp_cmd_send_msg net/sctp/sm_sideeffect.c:1114 [inline]
sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1777 [inline]
sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline]
sctp_do_sm+0x2858/0x4dc4 net/sctp/sm_sideeffect.c:1170
sctp_primitive_SEND+0x98/0xc8 net/sctp/primitive.c:163
sctp_sendmsg_to_asoc+0x1058/0x17dc net/sctp/socket.c:1869
sctp_sendmsg+0x196c/0x2844 net/sctp/socket.c:2027
inet_sendmsg+0x15c/0x290 net/ipv4/af_inet.c:823
sock_sendmsg_nosec net/socket.c:704 [inline]
sock_sendmsg net/socket.c:724 [inline]
__sys_sendto+0x388/0x4d0 net/socket.c:2039
__do_sys_sendto net/socket.c:2051 [inline]
__se_sys_sendto net/socket.c:2047 [inline]
__arm64_sys_sendto+0xd8/0xf8 net/socket.c:2047
__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 <unknown>:584
Code: 910062b7 9100e11a 9100c119 d343ff5c (387b6b89)
---[ end trace b6c276d6bae36334 ]---
----------------
Code disassembly (best guess):
0: 910062b7 add x23, x21, #0x18
4: 9100e11a add x26, x8, #0x38
8: 9100c119 add x25, x8, #0x30
c: d343ff5c lsr x28, x26, #3
* 10: 387b6b89 ldrb w9, [x28, x27] <-- 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 can test patches for this issue, for details see:
https://goo.gl/tpsmEJ#testing-patches

syzbot

unread,
Mar 9, 2023, 8:48:48 PM3/9/23
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 42616e0f09fb Linux 6.1.15
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=13dd5262c80000
kernel config: https://syzkaller.appspot.com/x/.config?x=650737f7e9682672
dashboard link: https://syzkaller.appspot.com/bug?extid=04d50f39111e013fc3ac
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=11b0d112c80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=122a390ac80000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/f10713d1fd0f/disk-42616e0f.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/5a1307bb774e/vmlinux-42616e0f.xz
kernel image: https://storage.googleapis.com/syzbot-assets/388238a30fe4/Image-42616e0f.gz.xz

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

Unable to handle kernel paging request at virtual address dfff800000000007
KASAN: null-ptr-deref in range [0x0000000000000038-0x000000000000003f]
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
[dfff800000000007] address between user and kernel address ranges
Internal error: Oops: 0000000096000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 1 PID: 4684 Comm: syz-executor125 Not tainted 6.1.15-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 : list_add_tail include/linux/list.h:102 [inline]
pc : sctp_outq_tail_data net/sctp/outqueue.c:91 [inline]
pc : sctp_outq_tail+0x270/0xa1c net/sctp/outqueue.c:299
lr : sctp_stream_out include/net/sctp/structs.h:1482 [inline]
lr : sctp_outq_tail_data net/sctp/outqueue.c:90 [inline]
lr : sctp_outq_tail+0x244/0xa1c net/sctp/outqueue.c:299
sp : ffff80001e757290
x29: ffff80001e7572a0 x28: 0000000000000007 x27: dfff800000000000
x26: 0000000000000038 x25: 0000000000000030 x24: ffff0000c10b5690
x23: ffff0000c10b5658 x22: ffff0000c10b56a0 x21: ffff0000c10b5640
x20: ffff0000d1e9c7e0 x19: 1fffe00018216ad4 x18: 0000000000000278
x17: ffff80001573d000 x16: ffff8000084fc844 x15: 0000000000000000
x14: 0000000000000000 x13: 0000000000000040 x12: ffff0000dc2f3680
x11: ff8080000abac648 x10: 0000000000000000 x9 : ffff80000abac648
x8 : 0000000000000000 x7 : 0000000000000000 x6 : 000000000000003f
x5 : ffff80001e757420 x4 : ffff0000c26a5100 x3 : ffff8000117e3724
x2 : ffff0000d1e9c7e8 x1 : 00000000000000c0 x0 : ffff0000c8b460c0
Call trace:
list_add_tail include/linux/list.h:102 [inline]
sctp_outq_tail_data net/sctp/outqueue.c:91 [inline]
sctp_outq_tail+0x270/0xa1c net/sctp/outqueue.c:299
sctp_cmd_send_msg net/sctp/sm_sideeffect.c:1114 [inline]
sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1777 [inline]
sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline]
sctp_do_sm+0x2858/0x4dc4 net/sctp/sm_sideeffect.c:1170
sctp_primitive_SEND+0x98/0xc8 net/sctp/primitive.c:163
sctp_sendmsg_to_asoc+0xd34/0x12f0 net/sctp/socket.c:1867
sctp_sendmsg+0x196c/0x2844 net/sctp/socket.c:2025
inet_sendmsg+0x15c/0x290 net/ipv4/af_inet.c:828
sock_sendmsg_nosec net/socket.c:714 [inline]
sock_sendmsg net/socket.c:734 [inline]
__sys_sendto+0x3b4/0x504 net/socket.c:2120
__do_sys_sendto net/socket.c:2132 [inline]
__se_sys_sendto net/socket.c:2128 [inline]
__arm64_sys_sendto+0xd8/0xf8 net/socket.c:2128
__invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
invoke_syscall+0x98/0x2c0 arch/arm64/kernel/syscall.c:52
el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
do_el0_svc+0x64/0x218 arch/arm64/kernel/syscall.c:206
el0_svc+0x58/0x168 arch/arm64/kernel/entry-common.c:637
el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:581
Code: 910062b7 9100e11a 9100c119 d343ff5c (387b6b89)
---[ end trace 0000000000000000 ]---

syzbot

unread,
May 11, 2023, 12:28:24 AM5/11/23
to syzkaller...@googlegroups.com
syzbot suspects this issue was fixed by commit:

commit 667eb99cf7c15fe5b0ecefe75cf658e20ef20c9f
Author: Xin Long <lucie...@gmail.com>
Date: Sat Apr 1 23:09:57 2023 +0000

sctp: check send stream number after wait_for_sndbuf

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1294f8e6280000
start commit: d9b4a0c83a2d Linux 5.15.98
git tree: linux-5.15.y
kernel config: https://syzkaller.appspot.com/x/.config?x=2f8d9515b973b23b
dashboard link: https://syzkaller.appspot.com/bug?extid=62124a000ba4d070d9dc
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=152d540cc80000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1459f47cc80000

If the result looks correct, please mark the issue as fixed by replying with:

#syz fix: sctp: check send stream number after wait_for_sndbuf

For information about bisection process see: https://goo.gl/tpsmEJ#bisection

syzbot

unread,
Aug 19, 2023, 11:53:21 PM8/19/23
to syzkaller...@googlegroups.com
syzbot suspects this issue was fixed by commit:

commit d2128636b303aa9cf065055402ee6697409a8837
Author: Xin Long <lucie...@gmail.com>
Date: Sat Apr 1 23:09:57 2023 +0000

sctp: check send stream number after wait_for_sndbuf

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1167f907a80000
start commit: 42616e0f09fb Linux 6.1.15
git tree: linux-6.1.y
Reply all
Reply to author
Forward
0 new messages