| From | Kamal Mostafa <> | Subject | [PATCH 3.19.y-ckt 84/86] net: eth: altera: fix napi poll_list corruption | Date | Tue, 27 Oct 2015 14:30:24 -0700 |
| |
3.19.8-ckt9 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Atsushi Nemoto <nemoto@toshiba-tops.co.jp>
[ Upstream commit 4548a697e4969d695047cebd6d9af5e2f6cc728e ]
tse_poll() calls __napi_complete() with irq enabled. This leads napi poll_list corruption and may stop all napi drivers working. Use napi_complete() instead of __napi_complete().
Signed-off-by: Atsushi Nemoto <nemoto@toshiba-tops.co.jp> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Kamal Mostafa <kamal@canonical.com> --- drivers/net/ethernet/altera/altera_tse_main.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/altera/altera_tse_main.c b/drivers/net/ethernet/altera/altera_tse_main.c index 760c72c..f2aa89b 100644 --- a/drivers/net/ethernet/altera/altera_tse_main.c +++ b/drivers/net/ethernet/altera/altera_tse_main.c @@ -501,8 +501,7 @@ static int tse_poll(struct napi_struct *napi, int budget) if (rxcomplete >= budget || txcomplete > 0) return rxcomplete; - napi_gro_flush(napi, false); - __napi_complete(napi); + napi_complete(napi); netdev_dbg(priv->dev, "NAPI Complete, did %d packets with budget %d\n", -- 1.9.1
|