Tue, Mar 28, 2017 at 09:42:58AM CEST, ivec...@redhat.com wrote:
>Dne 28.3.2017 v 09:10 Jiri Pirko napsal(a):
>> Tue, Mar 28, 2017 at 12:48:34AM CEST, da...@davemloft.net wrote:
>> > 
>> > Please fix up these warnings and resubmit:
>> > 
>> > drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c: In function 
>> > ‘mlxsw_sp_rif_counter_free’:
>> > drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:208:2: warning: 
>> > ‘p_counter_index’ may be used uninitialized in this function 
>> > [-Wmaybe-uninitialized]
>> >  mlxsw_sp_rif_counter_edit(mlxsw_sp, rif->rif_index,
>> >  ^
>> 
>> This is I believe also gcc bug. Code looks fine. I'm not getting the warning
>> with gcc 6
>> 
>No it is not a gcc bug. The function mlxsw_sp_rif_counter_free() is not
>static so the compiler cannot know all its callers and so 'dir' parameter can
>be theoretically anything.
>You call mlxsw_sp_rif_p_counter_get() there it assumes dir can be only
>MLXSW_SP_RIF_COUNTER_EGRESS or MLXSW_SP_RIF_COUNTER_INGRESS so initializes
>*pp_counter_index only for them. For any other value the value is
>uninitialized.

Interesting, why gcc 6.2.1 is silent then?

Reply via email to