On 11/12/2013 05:57, Soren Brinkmann :
When adjusting the link speed, the target frequency is determined by a
'swith (LINK_SPEED)' statement, that assigns the target rate only for
valid and expected LINK_SPEED values. This incomplete switch statement
leads to the following build warning:
      drivers/net/ethernet/cadence/macb.c: In function 
'macb_handle_link_change':
   >> drivers/net/ethernet/cadence/macb.c:241:14: warning: 'rate' may be used 
uninitialized in this function [-Wmaybe-uninitialized]
         netdev_warn(dev, "unable to generate target frequency: %ld Hz\n",
                    ^
      drivers/net/ethernet/cadence/macb.c:215:13: note: 'rate' was declared here
        long ferr, rate, rate_rounded;

Fixing this by bailing out of that function in the switch's default case
before the rate variable is used.

Reported-by: kbuild test robot <[email protected]>
Signed-off-by: Soren Brinkmann <[email protected]>

Acked-by: Nicolas Ferre <[email protected]>

---
  drivers/net/ethernet/cadence/macb.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/cadence/macb.c 
b/drivers/net/ethernet/cadence/macb.c
index 419529a9309d..3190d38e16fb 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -225,7 +225,7 @@ static void macb_set_tx_clk(struct clk *clk, int speed, 
struct net_device *dev)
                rate = 125000000;
                break;
        default:
-               break;
+               return;
        }

        rate_rounded = clk_round_rate(clk, rate);



--
Nicolas Ferre
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to