From 301c141d6a5ddacb8b2310a87a7e8fe997d17a39 Mon Sep 17 00:00:00 2001 From: Jakub Kicinski Date: Wed, 16 Dec 2015 19:08:52 +0000 Subject: [PATCH] nfp: clear ring delayed kick counters We need to clear delayed kick counters when we free rings otherwise after ndo_close()/ndo_open() we could kick HW by more entries than actually written to rings. Signed-off-by: Jakub Kicinski Reviewed-by: Rolf Neugebauer Signed-off-by: David S. Miller --- drivers/net/ethernet/netronome/nfp/nfp_net_common.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c index 7060539d276a..6c5af4cb5bdc 100644 --- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c +++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c @@ -1363,6 +1363,7 @@ static void nfp_net_tx_ring_free(struct nfp_net_tx_ring *tx_ring) tx_ring->wr_p = 0; tx_ring->rd_p = 0; tx_ring->qcp_rd_p = 0; + tx_ring->wr_ptr_add = 0; tx_ring->txbufs = NULL; tx_ring->txds = NULL; @@ -1437,6 +1438,7 @@ static void nfp_net_rx_ring_free(struct nfp_net_rx_ring *rx_ring) rx_ring->cnt = 0; rx_ring->wr_p = 0; rx_ring->rd_p = 0; + rx_ring->wr_ptr_add = 0; rx_ring->rxbufs = NULL; rx_ring->rxds = NULL;