Re: [syzbot] [lvs?] KMSAN: uninit-value in do_output_route4

Julian Anastasov <[email protected]>
Newsgroups org.kernel.vger.lvs-devel,org.kernel.vger.linux-kernel,org.kernel.vger.netdev,org.kernel.vger.netfilter-devel
Message-ID <[email protected]>
	Hello,

On Thu, 1 May 2025, syzbot wrote:

> Hello,
> 
> syzbot found the following issue on:
> 
> HEAD commit:    bc3372351d0c Merge tag 'for-6.15-rc3-tag' of git://git.ker..
> git tree:       upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=12d64574580000
> kernel config:  https://syzkaller.appspot.com/x/.config?x=fca45111586bf9a6
> dashboard link: https://syzkaller.appspot.com/bug?extid=04b9a82855c8aed20860
> compiler:       Debian clang version 15.0.6, Debian LLD 15.0.6
> userspace arch: i386
> 
> Unfortunately, I don't have any reproducer for this issue yet.
> 
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/01b8968610a1/disk-bc337235.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/528a97652269/vmlinux-bc337235.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/768ed51bbb66/bzImage-bc337235.xz
> 
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: [email protected]
> 
> =====================================================
> BUG: KMSAN: uninit-value in do_output_route4+0x42c/0x4d0 net/netfilter/ipvs/ip_vs_xmit.c:147
>  do_output_route4+0x42c/0x4d0 net/netfilter/ipvs/ip_vs_xmit.c:147
>  __ip_vs_get_out_rt+0x403/0x21d0 net/netfilter/ipvs/ip_vs_xmit.c:330
>  ip_vs_tunnel_xmit+0x205/0x2380 net/netfilter/ipvs/ip_vs_xmit.c:1136
>  ip_vs_in_hook+0x1aa5/0x35b0 net/netfilter/ipvs/ip_vs_core.c:2063
>  nf_hook_entry_hookfn include/linux/netfilter.h:154 [inline]
>  nf_hook_slow+0xf7/0x400 net/netfilter/core.c:626
>  nf_hook include/linux/netfilter.h:269 [inline]
>  __ip_local_out+0x758/0x7e0 net/ipv4/ip_output.c:118
>  ip_local_out net/ipv4/ip_output.c:127 [inline]
>  ip_send_skb+0x6a/0x3c0 net/ipv4/ip_output.c:1501
>  udp_send_skb+0xfda/0x1b70 net/ipv4/udp.c:1195
>  udp_sendmsg+0x2fe3/0x33c0 net/ipv4/udp.c:1483
>  inet_sendmsg+0x1fc/0x280 net/ipv4/af_inet.c:851
>  sock_sendmsg_nosec net/socket.c:712 [inline]
>  __sock_sendmsg+0x267/0x380 net/socket.c:727
>  ____sys_sendmsg+0x91b/0xda0 net/socket.c:2566
>  ___sys_sendmsg+0x28d/0x3c0 net/socket.c:2620
>  __sys_sendmmsg+0x41d/0x880 net/socket.c:2702
>  __compat_sys_sendmmsg net/compat.c:360 [inline]
>  __do_compat_sys_sendmmsg net/compat.c:367 [inline]
>  __se_compat_sys_sendmmsg net/compat.c:364 [inline]
>  __ia32_compat_sys_sendmmsg+0xc8/0x140 net/compat.c:364
>  ia32_sys_call+0x3ffa/0x41f0 arch/x86/include/generated/asm/syscalls_32.h:346
>  do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
>  __do_fast_syscall_32+0xb0/0x110 arch/x86/entry/syscall_32.c:306
>  do_fast_syscall_32+0x38/0x80 arch/x86/entry/syscall_32.c:331
>  do_SYSENTER_32+0x1f/0x30 arch/x86/entry/syscall_32.c:369
>  entry_SYSENTER_compat_after_hwframe+0x84/0x8e
> 
> Uninit was created at:
>  slab_post_alloc_hook mm/slub.c:4167 [inline]
>  slab_alloc_node mm/slub.c:4210 [inline]
>  __kmalloc_cache_noprof+0x8fa/0xe00 mm/slub.c:4367
>  kmalloc_noprof include/linux/slab.h:905 [inline]
>  ip_vs_dest_dst_alloc net/netfilter/ipvs/ip_vs_xmit.c:61 [inline]
>  __ip_vs_get_out_rt+0x35d/0x21d0 net/netfilter/ipvs/ip_vs_xmit.c:323
>  ip_vs_tunnel_xmit+0x205/0x2380 net/netfilter/ipvs/ip_vs_xmit.c:1136
>  ip_vs_in_hook+0x1aa5/0x35b0 net/netfilter/ipvs/ip_vs_core.c:2063
>  nf_hook_entry_hookfn include/linux/netfilter.h:154 [inline]
>  nf_hook_slow+0xf7/0x400 net/netfilter/core.c:626
>  nf_hook include/linux/netfilter.h:269 [inline]
>  __ip_local_out+0x758/0x7e0 net/ipv4/ip_output.c:118
>  ip_local_out net/ipv4/ip_output.c:127 [inline]
>  ip_send_skb+0x6a/0x3c0 net/ipv4/ip_output.c:1501
>  udp_send_skb+0xfda/0x1b70 net/ipv4/udp.c:1195
>  udp_sendmsg+0x2fe3/0x33c0 net/ipv4/udp.c:1483
>  inet_sendmsg+0x1fc/0x280 net/ipv4/af_inet.c:851
>  sock_sendmsg_nosec net/socket.c:712 [inline]
>  __sock_sendmsg+0x267/0x380 net/socket.c:727
>  ____sys_sendmsg+0x91b/0xda0 net/socket.c:2566
>  ___sys_sendmsg+0x28d/0x3c0 net/socket.c:2620
>  __sys_sendmmsg+0x41d/0x880 net/socket.c:2702
>  __compat_sys_sendmmsg net/compat.c:360 [inline]
>  __do_compat_sys_sendmmsg net/compat.c:367 [inline]
>  __se_compat_sys_sendmmsg net/compat.c:364 [inline]
>  __ia32_compat_sys_sendmmsg+0xc8/0x140 net/compat.c:364
>  ia32_sys_call+0x3ffa/0x41f0 arch/x86/include/generated/asm/syscalls_32.h:346
>  do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
>  __do_fast_syscall_32+0xb0/0x110 arch/x86/entry/syscall_32.c:306
>  do_fast_syscall_32+0x38/0x80 arch/x86/entry/syscall_32.c:331
>  do_SYSENTER_32+0x1f/0x30 arch/x86/entry/syscall_32.c:369
>  entry_SYSENTER_compat_after_hwframe+0x84/0x8e
> 
> CPU: 0 UID: 0 PID: 22408 Comm: syz.4.5165 Not tainted 6.15.0-rc3-syzkaller-00019-gbc3372351d0c #0 PREEMPT(undef) 
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
> =====================================================

	I hopefully addressed this report with patch titled
"ipvs: fix uninit-value for saddr in do_output_route4".

Regards

--
Julian Anastasov <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.