Skip to contentSkip to conversation

net: mvneta: simple cleanups

PATCH In review Arnaud Ebalard 3 participants 9 messages Jan 14, 2014 – Jan 16, 2014

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

cover net: mvneta: simple cleanups

Those two patches are intended for net-next. They apply on top of performance improvements patches from Willy for mvneta driver. They provide some simple cleanups for unused variables, function params or return values.

Arnaud Ebalard (2):
net: mvneta: mvneta_tx_done_gbe() cleanups
net: mvneta: make mvneta_txq_done() return void

 drivers/net/ethernet/marvell/mvneta.c | 26 ++++++++------------------
 1 file changed, 8 insertions(+), 18 deletions(-)
Signature · 1 line
1.8.5.2
#1 lore raw

PATCH 1/2 net: mvneta: mvneta_tx_done_gbe() cleanups

mvneta_tx_done_gbe() return value and third parameter are no more used. This patch changes the function prototype and removes a useless variable where the function is called.

---
 drivers/net/ethernet/marvell/mvneta.c | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)
drivers/net/ethernet/marvell/mvneta.c +4 -13
index f5fc7a249880..8c5150124b5e 100644
@@ -1704,30 +1704,23 @@ static void mvneta_txq_done_force(struct mvneta_port *pp,
 /* Handle tx done - called in softirq context. The <cause_tx_done> argument
  * must be a valid cause according to MVNETA_TXQ_INTR_MASK_ALL.
  */
-static u32 mvneta_tx_done_gbe(struct mvneta_port *pp, u32 cause_tx_done,
-			      int *tx_todo)
+static void mvneta_tx_done_gbe(struct mvneta_port *pp, u32 cause_tx_done)
 {
 	struct mvneta_tx_queue *txq;
-	u32 tx_done = 0;
 	struct netdev_queue *nq;
 
-	*tx_todo = 0;
 	while (cause_tx_done) {
 		txq = mvneta_tx_done_policy(pp, cause_tx_done);
 
 		nq = netdev_get_tx_queue(pp->dev, txq->id);
 		__netif_tx_lock(nq, smp_processor_id());
 
-		if (txq->count) {
-			tx_done += mvneta_txq_done(pp, txq);
-			*tx_todo += txq->count;
-		}
+		if (txq->count)
+			mvneta_txq_done(pp, txq);
 
 		__netif_tx_unlock(nq);
 		cause_tx_done &= ~((1 << txq->id));
 	}
-
-	return tx_done;
 }
 
 /* Compute crc8 of the specified address, using a unique algorithm ,
@@ -1961,9 +1954,7 @@ static int mvneta_poll(struct napi_struct *napi, int budget)
 
 	/* Release Tx descriptors */
 	if (cause_rx_tx & MVNETA_TX_INTR_MASK_ALL) {
-		int tx_todo = 0;
-
-		mvneta_tx_done_gbe(pp, (cause_rx_tx & MVNETA_TX_INTR_MASK_ALL), &tx_todo);
+		mvneta_tx_done_gbe(pp, (cause_rx_tx & MVNETA_TX_INTR_MASK_ALL));
 		cause_rx_tx &= ~MVNETA_TX_INTR_MASK_ALL;
 	}
 
Signature · 1 line
1.8.5.2
#3 lore raw

PATCH 2/2 net: mvneta: make mvneta_txq_done() return void

In reply to Arnaud Ebalard

The function return parameter is not used in mvneta_tx_done_gbe(), where the function is called. This patch makes the function return void.

---
 drivers/net/ethernet/marvell/mvneta.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)
drivers/net/ethernet/marvell/mvneta.c +4 -5
index 8c5150124b5e..f418f4f20f94 100644
@@ -1314,15 +1314,16 @@ static void mvneta_txq_bufs_free(struct mvneta_port *pp,
 }
 
 /* Handle end of transmission */
-static int mvneta_txq_done(struct mvneta_port *pp,
+static void mvneta_txq_done(struct mvneta_port *pp,
 			   struct mvneta_tx_queue *txq)
 {
 	struct netdev_queue *nq = netdev_get_tx_queue(pp->dev, txq->id);
 	int tx_done;
 
 	tx_done = mvneta_txq_sent_desc_proc(pp, txq);
-	if (tx_done == 0)
-		return tx_done;
+	if (!tx_done)
+		return;
+
 	mvneta_txq_bufs_free(pp, txq, tx_done);
 
 	txq->count -= tx_done;
@@ -1331,8 +1332,6 @@ static int mvneta_txq_done(struct mvneta_port *pp,
 		if (txq->size - txq->count >= MAX_SKB_FRAGS + 1)
 			netif_tx_wake_queue(nq);
 	}
-
-	return tx_done;
 }
 
 static void *mvneta_frag_alloc(const struct mvneta_port *pp)
Signature · 1 line
1.8.5.2
maintainer
#5 lore raw
In reply to Arnaud Ebalard

From: Arnaud Ebalard <[email protected]>
Date: Wed, 15 Jan 2014 00:45:31 +0100

Quoted 9 lines

Those two patches are intended for net-next. They apply on top of performance improvements patches from Willy for mvneta driver. They provide some simple cleanups for unused variables, function params or return values.

Arnaud Ebalard (2):
net: mvneta: mvneta_tx_done_gbe() cleanups
net: mvneta: make mvneta_txq_done() return void

These patches do not apply to net-next, please respin.

Thanks.

#6 lore raw

Hi David,

Quoted 9 lines · David Miller

From: Arnaud Ebalard <[email protected]>
Date: Wed, 15 Jan 2014 00:45:31 +0100

Quoted 6 lines

Those two patches are intended for net-next. They apply on top of performance improvements patches from Willy for mvneta driver. They provide some simple cleanups for unused variables, function params or return values.

Quoted 5 lines
Quoted 3 lines

Arnaud Ebalard (2):
net: mvneta: mvneta_tx_done_gbe() cleanups
net: mvneta: make mvneta_txq_done() return void

These patches do not apply to net-next, please respin.

They depend on the two series I sent, I verified that they apply well once these two series are applied to net-next.

Would you prefer that we resend a complete series with all the patches at once ?

Thanks,
Willy

maintainer
#7 lore raw

From: Willy Tarreau <[email protected]>
Date: Thu, 16 Jan 2014 07:16:15 +0100

Quoted 2 lines

Would you prefer that we resend a complete series with all the patches at once ?

That might, in fact, work much better.

Thanks.

#8 lore raw
Quoted 7 lines · David Miller

From: Willy Tarreau <[email protected]>
Date: Thu, 16 Jan 2014 07:16:15 +0100

Quoted 2 lines

Would you prefer that we resend a complete series with all the patches at once ?

That might, in fact, work much better.

OK I'm resending the whole series now. Thanks.
Willy