]> git.baikalelectronics.ru Git - kernel.git/commit
mlxsw: spectrum_router: avoid potential uninitialized data usage
authorArnd Bergmann <arnd@arndb.de>
Fri, 30 Sep 2016 16:17:10 +0000 (18:17 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 3 Oct 2016 05:55:18 +0000 (01:55 -0400)
commita34624a6e0ddb7db3ec5920dc09a2c596cedc8b9
treeddb2b791a3a865f46a830101166bf8f8171d1b5a
parentb5192da3c365344bb6e590a8a375e2ba2d305582
mlxsw: spectrum_router: avoid potential uninitialized data usage

If fi->fib_nhs is zero, the router interface pointer is uninitialized, as shown by
this warning:

drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c: In function 'mlxsw_sp_router_fib_event':
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:1674:21: error: 'r' may be used uninitialized in this function [-Werror=maybe-uninitialized]
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:1643:23: note: 'r' was declared here

This changes the loop so we handle the case the same way as finding no router
interface pointer attached to one of the nexthops to ensure we always
trap here instead of using uninitialized data.

Fixes: d3a93b4c07d9 ("mlxsw: spectrum_router: Use FIB notifications instead of switchdev calls")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c