[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <048e34cb-d920-60f5-7e52-ce3d2b4e00ae@gmail.com>
Date: Mon, 4 Feb 2019 18:53:35 -0800
From: David Ahern <dsahern@...il.com>
To: Koen Vandeputte <koen.vandeputte@...ntric.com>,
netdev@...r.kernel.org
Subject: Re: Compiler warning - ipv4 fib_trie
On 2/4/19 3:55 AM, Koen Vandeputte wrote:
> Hi All,
>
> During compilation of kernel 4.14.96 and 5.0-rc5 I'm seeing following
> warning:
>
> net/ipv4/fib_trie.c: In function 'fib_trie_unmerge':
> net/ipv4/fib_trie.c:1749:8: warning: 'local_tp' may be used
> uninitialized in this function [-Wmaybe-uninitialized]
> if (fib_insert_alias(lt, local_tp, local_l, new_fa,
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> NULL, l->key)) {
> ~~~~~~~~~~~~~
>
> Code:
>
> https://elixir.bootlin.com/linux/v5.0-rc5/source/net/ipv4/fib_trie.c#L1731
>
> Looks like 'local_tp' should be NULL-ified
>
>
> Thanks,
>
> Koen
>
I believe that is a false positive. If you analyze the loop, local_tp is
set when local_l is NULL and it is set before the first use. I am
surprised the compiler can not track that. fib_find_node has 1 return
point and local_tp is set right before.
Powered by blists - more mailing lists