IPoIB: Avoid reading an uninitialized member variable
authorBart Van Assche <bart.vanassche@sandisk.com>
Mon, 21 Nov 2016 18:21:41 +0000 (10:21 -0800)
committerDoug Ledford <dledford@redhat.com>
Wed, 14 Dec 2016 18:27:34 +0000 (13:27 -0500)
This patch avoids that Coverity reports the following:

    Using uninitialized value port_attr.state when calling printk

Fixes: commit 94232d9ce817 ("IPoIB: Start multicast join process only on active ports")
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Erez Shitrit <erezsh@mellanox.com>
Cc: <stable@vger.kernel.org>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/ulp/ipoib/ipoib_multicast.c

index d3394b6add24a0303dd51710d72f86087a36c7fe..2a3980c2c6708355a192eecf50cd48d6f38b1d29 100644 (file)
@@ -575,8 +575,11 @@ void ipoib_mcast_join_task(struct work_struct *work)
        if (!test_bit(IPOIB_FLAG_OPER_UP, &priv->flags))
                return;
 
-       if (ib_query_port(priv->ca, priv->port, &port_attr) ||
-           port_attr.state != IB_PORT_ACTIVE) {
+       if (ib_query_port(priv->ca, priv->port, &port_attr)) {
+               ipoib_dbg(priv, "ib_query_port() failed\n");
+               return;
+       }
+       if (port_attr.state != IB_PORT_ACTIVE) {
                ipoib_dbg(priv, "port state is not ACTIVE (state = %d) suspending join task\n",
                          port_attr.state);
                return;