aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/toshiba
diff options
context:
space:
mode:
authorJulia Lawall <Julia.Lawall@lip6.fr>2013-12-29 17:47:22 -0500
committerDavid S. Miller <davem@davemloft.net>2014-01-02 03:30:35 -0500
commit4fc3ecde699580c2f1fdd8973080a599c6b1a719 (patch)
tree5b09ef302ef09c38233073b9925d1b9c31f80023 /drivers/net/ethernet/toshiba
parent0c3584d58913a72a6b28a976f7c0bfd2afb65237 (diff)
net: fix error return code
Set the return variable to propagate any error code as done elsewhere in the function. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> ( if@p1 (\(ret < 0\|ret != 0\)) { ... return ret; } | ret@p1 = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/toshiba')
-rw-r--r--drivers/net/ethernet/toshiba/ps3_gelic_net.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/net/ethernet/toshiba/ps3_gelic_net.c b/drivers/net/ethernet/toshiba/ps3_gelic_net.c
index f7f2ef49c0c1..d899d0072ae0 100644
--- a/drivers/net/ethernet/toshiba/ps3_gelic_net.c
+++ b/drivers/net/ethernet/toshiba/ps3_gelic_net.c
@@ -1739,12 +1739,14 @@ static int ps3_gelic_driver_probe(struct ps3_system_bus_device *dev)
1739 GELIC_CARD_PORT_STATUS_CHANGED; 1739 GELIC_CARD_PORT_STATUS_CHANGED;
1740 1740
1741 1741
1742 if (gelic_card_init_chain(card, &card->tx_chain, 1742 result = gelic_card_init_chain(card, &card->tx_chain,
1743 card->descr, GELIC_NET_TX_DESCRIPTORS)) 1743 card->descr, GELIC_NET_TX_DESCRIPTORS);
1744 if (result)
1744 goto fail_alloc_tx; 1745 goto fail_alloc_tx;
1745 if (gelic_card_init_chain(card, &card->rx_chain, 1746 result = gelic_card_init_chain(card, &card->rx_chain,
1746 card->descr + GELIC_NET_TX_DESCRIPTORS, 1747 card->descr + GELIC_NET_TX_DESCRIPTORS,
1747 GELIC_NET_RX_DESCRIPTORS)) 1748 GELIC_NET_RX_DESCRIPTORS);
1749 if (result)
1748 goto fail_alloc_rx; 1750 goto fail_alloc_rx;
1749 1751
1750 /* head of chain */ 1752 /* head of chain */
@@ -1754,7 +1756,8 @@ static int ps3_gelic_driver_probe(struct ps3_system_bus_device *dev)
1754 card->rx_top, card->tx_top, sizeof(struct gelic_descr), 1756 card->rx_top, card->tx_top, sizeof(struct gelic_descr),
1755 GELIC_NET_RX_DESCRIPTORS); 1757 GELIC_NET_RX_DESCRIPTORS);
1756 /* allocate rx skbs */ 1758 /* allocate rx skbs */
1757 if (gelic_card_alloc_rx_skbs(card)) 1759 result = gelic_card_alloc_rx_skbs(card);
1760 if (result)
1758 goto fail_alloc_skbs; 1761 goto fail_alloc_skbs;
1759 1762
1760 spin_lock_init(&card->tx_lock); 1763 spin_lock_init(&card->tx_lock);
@@ -1772,7 +1775,8 @@ static int ps3_gelic_driver_probe(struct ps3_system_bus_device *dev)
1772 } 1775 }
1773 1776
1774#ifdef CONFIG_GELIC_WIRELESS 1777#ifdef CONFIG_GELIC_WIRELESS
1775 if (gelic_wl_driver_probe(card)) { 1778 result = gelic_wl_driver_probe(card);
1779 if (result) {
1776 dev_dbg(&dev->core, "%s: WL init failed\n", __func__); 1780 dev_dbg(&dev->core, "%s: WL init failed\n", __func__);
1777 goto fail_setup_netdev; 1781 goto fail_setup_netdev;
1778 } 1782 }