[ 3.5.y.z extended stable ] Patch "drivers: net: ethernet: cpsw: use netif_wake_queue() while" has been added to staging queue

Luis Henriques luis.henriques at canonical.com
Thu Apr 4 13:25:26 UTC 2013

This is a note to let you know that I have just added a patch titled

    drivers: net: ethernet: cpsw: use netif_wake_queue() while

to the linux-3.5.y-queue branch of the 3.5.y.z extended stable tree 
which can be found at:


If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.5.y.z tree, see



>From 5c00fb654a6b5d9a308b2218e6772d9e980eb9bc Mon Sep 17 00:00:00 2001
From: Mugunthan V N <mugunthanvnm at ti.com>
Date: Wed, 27 Mar 2013 04:41:59 +0000
Subject: [PATCH] drivers: net: ethernet: cpsw: use netif_wake_queue() while
 restarting tx queue

commit b56d6b3fca6d1214dbc9c5655f26e5d4ec04afc8 upstream.

To restart tx queue use netif_wake_queue() intead of netif_start_queue()
so that net schedule will restart transmission immediately which will
increase network performance while doing huge data transfers.

Reported-by: Dan Franke <dan.franke at schneider-electric.com>
Suggested-by: Sriramakrishnan A G <srk at ti.com>
Signed-off-by: Mugunthan V N <mugunthanvnm at ti.com>
Acked-by: Eric Dumazet <edumazet at google.com>
Signed-off-by: David S. Miller <davem at davemloft.net>
[ luis: adjust context ]
Signed-off-by: Luis Henriques <luis.henriques at canonical.com>
 drivers/net/ethernet/ti/cpsw.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c
index 6685bbb..310e353 100644
--- a/drivers/net/ethernet/ti/cpsw.c
+++ b/drivers/net/ethernet/ti/cpsw.c
@@ -249,7 +249,7 @@ void cpsw_tx_handler(void *token, int len, int status)
 	struct cpsw_priv	*priv = netdev_priv(ndev);

 	if (unlikely(netif_queue_stopped(ndev)))
-		netif_start_queue(ndev);
+		netif_wake_queue(ndev);
 	priv->stats.tx_bytes += len;

More information about the kernel-team mailing list