Re: [PATCH net-next] net: Fix incorrect address comparison when searching for a bind2 bucket
From: Alexander Potapenko <glider@google.com>
Date: 2022-09-28 11:16:32
On Wed, Sep 28, 2022 at 7:07 AM Eric Dumazet [off-list ref] wrote:
On Tue, Sep 27, 2022 at 9:46 PM Martin KaFai Lau [off-list ref] wrote:quoted
On 9/27/22 8:49 PM, Eric Dumazet wrote:quoted
On Mon, Sep 26, 2022 at 5:25 PM Martin KaFai Lau [off-list ref] wrote:quoted
From: Martin KaFai Lau <martin.lau@kernel.org> The v6_rcv_saddr and rcv_saddr are inside a union in the 'struct inet_bind2_bucket'. When searching a bucket by following the bhash2 hashtable chain, eg. inet_bind2_bucket_match, it is only using the sk->sk_family and there is no way to check if the inet_bind2_bucket has a v6 or v4 address in the union. This leads to an uninit-value KMSAN report in [0] and also potentially incorrect matches.I do not see the KMSAN report, is it missing from this changelog ?My bad. Forgot to paste the link in the commit message. It is here: https://lore.kernel.org/netdev/CAG_fn=Ud3zSW7AZWXc+asfMhZVL5ETnvuY44Pmyv4NPv-ijN-A@mail.gmail.com/ (local)I see, thanks. Reviewed-by: Eric Dumazet <edumazet@google.com>
Tested-by: Alexander Potapenko <glider@google.com> Thanks! -- Alexander Potapenko Software Engineer Google Germany GmbH Erika-Mann-Straße, 33 80636 München Geschäftsführer: Paul Manicle, Liana Sebastian Registergericht und -nummer: Hamburg, HRB 86891 Sitz der Gesellschaft: Hamburg