net/mlx4_core: Fixed error flow in rem_slave_eqs
authorJack Morgenstein <jackm@dev.mellanox.co.il>
Tue, 15 May 2012 10:35:04 +0000 (10:35 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 16 May 2012 04:56:59 +0000 (00:56 -0400)
Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/mellanox/mlx4/resource_tracker.c

index b3c505d4fdd9692e19036309abfc35f7708698d4..b45d0e7f6ab016452f5259eabfc847cc97db7702 100644 (file)
@@ -3152,14 +3152,13 @@ static void rem_slave_eqs(struct mlx4_dev *dev, int slave)
                                                           MLX4_CMD_HW2SW_EQ,
                                                           MLX4_CMD_TIME_CLASS_A,
                                                           MLX4_CMD_NATIVE);
-                                       mlx4_dbg(dev, "rem_slave_eqs: failed"
-                                                " to move slave %d eqs %d to"
-                                                " SW ownership\n", slave, eqn);
+                                       if (err)
+                                               mlx4_dbg(dev, "rem_slave_eqs: failed"
+                                                        " to move slave %d eqs %d to"
+                                                        " SW ownership\n", slave, eqn);
                                        mlx4_free_cmd_mailbox(dev, mailbox);
-                                       if (!err) {
-                                               atomic_dec(&eq->mtt->ref_count);
-                                               state = RES_EQ_RESERVED;
-                                       }
+                                       atomic_dec(&eq->mtt->ref_count);
+                                       state = RES_EQ_RESERVED;
                                        break;
 
                                default: