Skip to contentSkip to conversation

sky2: Remove failure cases for sky2_rx_start

PATCH In review Mike McCormack 2 participants 3 messages Jan 27, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 3/3 sky2: Remove failure cases for sky2_rx_start

sky2_rx_start() can no longer fail, so remove redundant code pathes.

---
 drivers/net/sky2.c |   24 ++++++------------------
 1 files changed, 6 insertions(+), 18 deletions(-)
drivers/net/sky2.c +6 -18
index a967912..6ea660f 100644
@@ -1366,7 +1366,7 @@ static inline void sky2_rx_update(struct sky2_port *sky2, unsigned rxq)
  * One element is used for checksum enable/disable, and one
  * extra to avoid wrap.
  */
-static int sky2_rx_start(struct sky2_port *sky2)
+static void sky2_rx_start(struct sky2_port *sky2)
 {
 	struct sky2_hw *hw = sky2->hw;
 	struct rx_ring_info *re;
@@ -1392,7 +1392,6 @@ static int sky2_rx_start(struct sky2_port *sky2)
 	if (!(hw->flags & SKY2_HW_NEW_LE))
 		rx_set_checksum(sky2);
 
-
 	/* submit Rx ring */
 	for (i = 0; i < sky2->rx_pending; i++) {
 		re = sky2->rx_ring + i;
@@ -1437,10 +1436,6 @@ static int sky2_rx_start(struct sky2_port *sky2)
 		sky2_write32(hw, Q_ADDR(txqaddr[sky2->port], Q_TEST),
 			     TBMU_TEST_HOME_ADD_FIX_EN | TBMU_TEST_ROUTING_ADD_FIX_EN);
 	}
-
-
-
-	return 0;
 }
 
 static int sky2_alloc_buffers(struct sky2_port *sky2)
@@ -1590,9 +1585,7 @@ static int sky2_up(struct net_device *dev)
 	sky2_set_vlan_mode(hw, port, sky2->vlgrp != NULL);
 #endif
 
-	err = sky2_rx_start(sky2);
-	if (err)
-		goto err_out;
+	sky2_rx_start(sky2);
 
 	/* Enable interrupts from phy/mac for port */
 	imask = sky2_read32(hw, B0_IMSK);
@@ -2200,7 +2193,6 @@ static int sky2_change_mtu(struct net_device *dev, int new_mtu)
 	struct sky2_port *sky2 = netdev_priv(dev);
 	struct sky2_hw *hw = sky2->hw;
 	unsigned port = sky2->port;
-	int err;
 	u16 ctl, mode;
 	u32 imask;
 
@@ -2246,21 +2238,17 @@ static int sky2_change_mtu(struct net_device *dev, int new_mtu)
 
 	sky2_write8(hw, RB_ADDR(rxqaddr[port], RB_CTRL), RB_ENA_OP_MD);
 
-	err = sky2_rx_start(sky2);
+	sky2_rx_start(sky2);
 	sky2_write32(hw, B0_IMSK, imask);
 
 	sky2_read32(hw, B0_Y2_SP_LISR);
 	napi_enable(&hw->napi);
 
-	if (err)
-		dev_close(dev);
-	else {
-		gma_write16(hw, port, GM_GP_CTRL, ctl);
+	gma_write16(hw, port, GM_GP_CTRL, ctl);
 
-		netif_wake_queue(dev);
-	}
+	netif_wake_queue(dev);
 
-	return err;
+	return 0;
 }
 
 /* For small just reuse existing skb for next receive */
Signature · 1 line
1.5.6.5
#1 lore raw
Quoted 3 lines · On Thu, 28 Jan 2010 00:05:54 +0900 Mike McCormack <[email protected]> wrote:

sky2_rx_start() can no longer fail, so remove redundant code pathes.

This can't work right if MTU is increased. The buffers need to be reallocated in change_mtu(); and yes it could fail when getting the new buffers.

#2 lore raw

2010/1/28 Stephen Hemminger <[email protected]>:

Quoted 9 lines
Quoted 3 lines · On Thu, 28 Jan 2010 00:05:54 +0900 Mike McCormack <[email protected]> wrote:

sky2_rx_start() can no longer fail, so remove redundant code pathes.

This can't work right if MTU is increased. The buffers need to be reallocated in change_mtu(); and yes it could fail when getting the new buffers.

Thanks for the feedback. I will rework the patches.

Mike