rocker: gaurd against NULL rocker_port when removing ports
authorScott Feldman <sfeldma@gmail.com>
Sat, 13 Jun 2015 04:09:44 +0000 (21:09 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 15 Jun 2015 23:03:48 +0000 (16:03 -0700)
The ports array is filled in as ports are probed, but if probing doesn't
finish, we need to stop only those ports that where probed successfully.
Check the ports array for NULL to skip un-probed ports when stopping.

Signed-off-by: Scott Feldman <sfeldma@gmail.com>
Acked-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/rocker/rocker.c

index 819289e5be4f726c13ce30c5c5d8df2f45e6a32a..c6a6e3c36d9073c5852b5f38fec9a59f31cc3cb0 100644 (file)
@@ -4802,6 +4802,8 @@ static void rocker_remove_ports(const struct rocker *rocker)
 
        for (i = 0; i < rocker->port_count; i++) {
                rocker_port = rocker->ports[i];
+               if (!rocker_port)
+                       continue;
                rocker_port_ig_tbl(rocker_port, SWITCHDEV_TRANS_NONE,
                                   ROCKER_OP_FLAG_REMOVE);
                unregister_netdev(rocker_port->dev);