From: Martin KaFai Lau <martin.lau@linux.dev>
To: Alexander Potapenko <glider@google.com>
Cc: Networking <netdev@vger.kernel.org>,
joannelkoong@gmail.com, Jakub Kicinski <kuba@kernel.org>
Subject: Re: Use of uninit value in inet_bind2_bucket_find
Date: Mon, 26 Sep 2022 17:33:18 -0700 [thread overview]
Message-ID: <dd9b012f-88a2-c9fe-7ee2-863909e33e25@linux.dev> (raw)
In-Reply-To: <CAG_fn=Ud3zSW7AZWXc+asfMhZVL5ETnvuY44Pmyv4NPv-ijN-A@mail.gmail.com>
On 9/19/22 6:41 AM, Alexander Potapenko wrote:
> Hi Joanne, Jakub et al.,
>
> When building next-20220919 with KMSAN I am seeing the following error
> at boot time:
>
> =====================================================
> BUG: KMSAN: uninit-value in inet_bind2_bucket_find+0x71f/0x790
> net/ipv4/inet_hashtables.c:827
> inet_bind2_bucket_find+0x71f/0x790 net/ipv4/inet_hashtables.c:827
> inet_csk_get_port+0x2415/0x32e0 net/ipv4/inet_connection_sock.c:529
> __inet6_bind+0x1474/0x1a20 net/ipv6/af_inet6.c:406
> inet6_bind+0x176/0x360 net/ipv6/af_inet6.c:465
> __sys_bind+0x5b3/0x750 net/socket.c:1776
> __do_sys_bind net/socket.c:1787
> __se_sys_bind net/socket.c:1785
> __x64_sys_bind+0x8d/0xe0 net/socket.c:1785
> do_syscall_x64 arch/x86/entry/common.c:50
> do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
> entry_SYSCALL_64_after_hwframe+0x63/0xcd ??:?
>
> Uninit was created at:
> slab_post_alloc_hook+0x156/0xb40 mm/slab.h:759
> slab_alloc_node mm/slub.c:3331
> slab_alloc mm/slub.c:3339
> __kmem_cache_alloc_lru mm/slub.c:3346
> kmem_cache_alloc+0x47e/0x9f0 mm/slub.c:3355
> inet_bind2_bucket_create+0x4b/0x3b0 net/ipv4/inet_hashtables.c:128
> inet_csk_get_port+0x2513/0x32e0 net/ipv4/inet_connection_sock.c:533
> __inet_bind+0xbd2/0x1040 net/ipv4/af_inet.c:525
> inet_bind+0x184/0x360 net/ipv4/af_inet.c:456
> __sys_bind+0x5b3/0x750 net/socket.c:1776
> __do_sys_bind net/socket.c:1787
> __se_sys_bind net/socket.c:1785
> __x64_sys_bind+0x8d/0xe0 net/socket.c:1785
> do_syscall_x64 arch/x86/entry/common.c:50
> do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
> entry_SYSCALL_64_after_hwframe+0x63/0xcd ??:?
>
> CPU: 3 PID: 5983 Comm: sshd Not tainted 6.0.0-rc6-next-20220919 #211
> Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
> 1.16.0-debian-1.16.0-4 04/01/2014
> =====================================================
>
> I think this is related to "net: Add a bhash2 table hashed by port and
> address", could you please take a look?
> This error is not reported on v6.0-rc5 (note that KMSAN only exists in
> -next and as a v6.0-rc5 fork at https://github.com/google/kmsan).
Hi Alex, thanks for the report.
I have posted a fix [0]. I have problem getting kmsan kernel to boot.
Could you help to give the patch a try ? Thanks.
[0]: https://lore.kernel.org/netdev/20220927002544.3381205-1-kafai@fb.com/
next prev parent reply other threads:[~2022-09-27 0:33 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-19 13:41 Use of uninit value in inet_bind2_bucket_find Alexander Potapenko
2022-09-27 0:33 ` Martin KaFai Lau [this message]
2022-09-27 16:34 ` Alexander Potapenko
2022-09-27 17:22 ` Martin KaFai Lau
2022-09-28 11:58 ` Alexander Potapenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=dd9b012f-88a2-c9fe-7ee2-863909e33e25@linux.dev \
--to=martin.lau@linux.dev \
--cc=glider@google.com \
--cc=joannelkoong@gmail.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).