Hello Moni Shoua,
This is a semi-automatic email about new static checker warnings.
The patch ad4885d279b6: "IB/mlx4: Build the port IBoE GID table
properly under bonding" from Feb 5, 2014, leads to the following
Smatch complaint:
drivers/infiniband/hw/mlx4/main.c:1749 mlx4_ib_scan_netdevs()
error: we previously assumed 'curr_netdev' could be null (see line
1722)
drivers/infiniband/hw/mlx4/main.c
1721
1722 if (curr_netdev) {
^^^^^^^^^^^
Check.
1723 port_state = (netif_running(curr_netdev) &&
netif_carrier_ok(curr_netdev)) ?
1724 IB_PORT_ACTIVE :
IB_PORT_DOWN;
1725 mlx4_ib_set_default_gid(ibdev, curr_netdev,
port);
1726 } else {
1727 reset_gid_table(ibdev, port);
1728 }
1729 /* if using bonding/team and a slave port is down, we
don't the bond IP
1730 * based gids in the table since flows that select port
by gid may get
1731 * the down port.
1732 */
1733 if (curr_master && (port_state == IB_PORT_DOWN)) {
1734 reset_gid_table(ibdev, port);
1735 mlx4_ib_set_default_gid(ibdev, curr_netdev,
port);
1736 }
1737 /* if bonding is used it is possible that we add it to
masters
1738 * only after IP address is assigned to the net bonding
1739 * interface.
1740 */
1741 if (curr_master && (old_master != curr_master)) {
1742 reset_gid_table(ibdev, port);
1743 mlx4_ib_set_default_gid(ibdev, curr_netdev,
port);
1744 mlx4_ib_get_dev_addr(curr_master, ibdev, port);
1745 }
1746
1747 if (!curr_master && (old_master != curr_master)) {
1748 reset_gid_table(ibdev, port);
1749 mlx4_ib_set_default_gid(ibdev, curr_netdev,
port);
^^^^^^^^^^^
Dereferenced without checking.
1750 mlx4_ib_get_dev_addr(curr_netdev, ibdev, port);
1751 }
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html