net/mlx4_en: Fix uninitialized use of 'port_up' in mlx4_en_set_channels()
authorChristian Engelmayer <cengelma@gmx.at>
Sat, 17 May 2014 21:52:03 +0000 (23:52 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 19 May 2014 01:14:43 +0000 (21:14 -0400)
Function mlx4_en_set_channels() stops running ports before performing the
requested action. In that case local variable 'port_up' is set so that the
port is restarted at the end of the function, however, in case the port was
not stopped, variable 'port_up' is left uninitialized and the behaviour is
undetermined. Detected by Coverity - CID 751497.

Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Acked-By: Amir Vadai <amirv@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx4/en_ethtool.c

index a72d99fd7a2da3facdf2a6ca760f2369f0cf5fac..7ba3df3cb312dfdfe2cfb08074c662743c49f67a 100644 (file)
@@ -1121,7 +1121,7 @@ static int mlx4_en_set_channels(struct net_device *dev,
 {
        struct mlx4_en_priv *priv = netdev_priv(dev);
        struct mlx4_en_dev *mdev = priv->mdev;
-       int port_up;
+       int port_up = 0;
        int err = 0;
 
        if (channel->other_count || channel->combined_count ||