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.

Reply via email to