Message ID | 1258026942-2947-1-git-send-email-srk@ti.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Sriramakrishnan <srk@ti.com> Date: Thu, 12 Nov 2009 17:25:42 +0530 > In the NAPI poll function(emac_poll), check for netif_running() > is unnecassary. In addition to associated runtime overhead, it > also results in a continuous softirq loop when the interface is > brought down under heavy traffic(tested wit Traffic Generator). > Once the interface is disabled, the poll function always returns > zero(with the check for netif_running) and napi_complete() would > never get called resulting in softirq loop. > > Signed-off-by: Sriramakrishnan <srk@ti.com> > Acked-by: Chaithrika U S <chaithrika@ti.com> Applied to net-2.6 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c index f72c56d..2533413 100644 --- a/drivers/net/davinci_emac.c +++ b/drivers/net/davinci_emac.c @@ -2140,9 +2140,6 @@ static int emac_poll(struct napi_struct *napi, int budget) u32 status = 0; u32 num_pkts = 0; - if (!netif_running(ndev)) - return 0; - /* Check interrupt vectors and call packet processing */ status = emac_read(EMAC_MACINVECTOR);