[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250612234950.40595-1-kuni1840@gmail.com>
Date: Thu, 12 Jun 2025 16:49:36 -0700
From: Kuniyuki Iwashima <kuni1840@...il.com>
To: syzbot+1d3c235276f62963e93a@...kaller.appspotmail.com
Cc: 3chas3@...il.com,
linux-atm-general@...ts.sourceforge.net,
linux-kernel@...r.kernel.org,
netdev@...r.kernel.org,
syzkaller-bugs@...glegroups.com,
kuniyu@...gle.com
Subject: Re: [syzbot] [atm?] KMSAN: uninit-value in atmtcp_c_send
From: syzbot <syzbot+1d3c235276f62963e93a@...kaller.appspotmail.com>
Date: Thu, 12 Jun 2025 16:41:26 -0700
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 2c4a1f3fe03e Merge tag 'bpf-fixes' of git://git.kernel.org..
> git tree: upstream
> console+strace: https://syzkaller.appspot.com/x/log.txt?x=1787d9d4580000
> kernel config: https://syzkaller.appspot.com/x/.config?x=42d51b7b9f9e61d
> dashboard link: https://syzkaller.appspot.com/bug?extid=1d3c235276f62963e93a
> compiler: Debian clang version 20.1.6 (++20250514063057+1e4d39e07757-1~exp1~20250514183223.118), Debian LLD 20.1.6
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1195ed70580000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=16187682580000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/1313b3ad2bf4/disk-2c4a1f3f.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/15f719cfdf88/vmlinux-2c4a1f3f.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/e7f531b0bef6/bzImage-2c4a1f3f.xz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+1d3c235276f62963e93a@...kaller.appspotmail.com
>
> =====================================================
> BUG: KMSAN: uninit-value in atmtcp_c_send+0x255/0xed0 drivers/atm/atmtcp.c:294
> atmtcp_c_send+0x255/0xed0 drivers/atm/atmtcp.c:294
> vcc_sendmsg+0xd7c/0xff0 net/atm/common.c:644
> sock_sendmsg_nosec net/socket.c:712 [inline]
> __sock_sendmsg+0x330/0x3d0 net/socket.c:727
> ____sys_sendmsg+0x7e0/0xd80 net/socket.c:2566
> ___sys_sendmsg+0x271/0x3b0 net/socket.c:2620
> __sys_sendmsg net/socket.c:2652 [inline]
> __do_sys_sendmsg net/socket.c:2657 [inline]
> __se_sys_sendmsg net/socket.c:2655 [inline]
> __x64_sys_sendmsg+0x211/0x3e0 net/socket.c:2655
> x64_sys_call+0x32fb/0x3db0 arch/x86/include/generated/asm/syscalls_64.h:47
> do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
> do_syscall_64+0xd9/0x210 arch/x86/entry/syscall_64.c:94
> entry_SYSCALL_64_after_hwframe+0x77/0x7f
>
> Uninit was created at:
> slab_post_alloc_hook mm/slub.c:4154 [inline]
> slab_alloc_node mm/slub.c:4197 [inline]
> kmem_cache_alloc_node_noprof+0x818/0xf00 mm/slub.c:4249
> kmalloc_reserve+0x13c/0x4b0 net/core/skbuff.c:579
> __alloc_skb+0x347/0x7d0 net/core/skbuff.c:670
> alloc_skb include/linux/skbuff.h:1336 [inline]
> vcc_sendmsg+0xb40/0xff0 net/atm/common.c:628
> sock_sendmsg_nosec net/socket.c:712 [inline]
> __sock_sendmsg+0x330/0x3d0 net/socket.c:727
> ____sys_sendmsg+0x7e0/0xd80 net/socket.c:2566
> ___sys_sendmsg+0x271/0x3b0 net/socket.c:2620
> __sys_sendmsg net/socket.c:2652 [inline]
> __do_sys_sendmsg net/socket.c:2657 [inline]
> __se_sys_sendmsg net/socket.c:2655 [inline]
> __x64_sys_sendmsg+0x211/0x3e0 net/socket.c:2655
> x64_sys_call+0x32fb/0x3db0 arch/x86/include/generated/asm/syscalls_64.h:47
> do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
> do_syscall_64+0xd9/0x210 arch/x86/entry/syscall_64.c:94
> entry_SYSCALL_64_after_hwframe+0x77/0x7f
>
> CPU: 1 UID: 0 PID: 5798 Comm: syz-executor192 Not tainted 6.16.0-rc1-syzkaller-00010-g2c4a1f3fe03e #0 PREEMPT(undef)
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
> =====================================================
>
>
> ---
> 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 syzkaller@...glegroups.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.
#syz test
diff --git a/drivers/atm/atmtcp.c b/drivers/atm/atmtcp.c
index d4aa0f353b6c..c74dec9a2759 100644
--- a/drivers/atm/atmtcp.c
+++ b/drivers/atm/atmtcp.c
@@ -288,7 +288,11 @@ static int atmtcp_c_send(struct atm_vcc *vcc,struct sk_buff *skb)
struct sk_buff *new_skb;
int result = 0;
- if (!skb->len) return 0;
+ if (!skb->len)
+ return 0;
+ if (skb->len < sizeof(atmtcp_hdr))
+ return -EINVAL;
+
dev = vcc->dev_data;
hdr = (struct atmtcp_hdr *) skb->data;
if (hdr->length == ATMTCP_HDR_MAGIC) {
Powered by blists - more mailing lists