Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ecf244f7 authored by Arnd Bergmann's avatar Arnd Bergmann Committed by David S. Miller
Browse files

rocker: fix maybe-uninitialized warning



In some rare configurations, we get a warning about the 'index' variable
being used without an initialization:

drivers/net/ethernet/rocker/rocker_ofdpa.c: In function ‘ofdpa_port_fib_ipv4.isra.16.constprop’:
drivers/net/ethernet/rocker/rocker_ofdpa.c:2425:92: warning: ‘index’ may be used uninitialized in this function [-Wmaybe-uninitialized]

This is a false positive, the logic is just a bit too complex for gcc
to follow here. Moving the intialization of 'index' a little further
down makes it clear to gcc that the function always returns an error
if it is not initialized.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 52ccd631
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1493,8 +1493,6 @@ static int ofdpa_port_ipv4_nh(struct ofdpa_port *ofdpa_port,
	spin_lock_irqsave(&ofdpa->neigh_tbl_lock, lock_flags);

	found = ofdpa_neigh_tbl_find(ofdpa, ip_addr);
	if (found)
		*index = found->index;

	updating = found && adding;
	removing = found && !adding;
@@ -1508,9 +1506,11 @@ static int ofdpa_port_ipv4_nh(struct ofdpa_port *ofdpa_port,
		resolved = false;
	} else if (removing) {
		ofdpa_neigh_del(trans, found);
		*index = found->index;
	} else if (updating) {
		ofdpa_neigh_update(found, trans, NULL, false);
		resolved = !is_zero_ether_addr(found->eth_dst);
		*index = found->index;
	} else {
		err = -ENOENT;
	}