summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet
diff options
context:
space:
mode:
authorEric Dumazet2016-11-16 15:19:02 +0100
committerDavid S. Miller2016-11-16 23:06:51 +0100
commit5f00a8d8a2c2fd99528ab1a3632f0e77f4d25202 (patch)
treee9f99669ffd7817c34d3bb0c77ec1a148f915414 /drivers/net/ethernet
parentbe2net: do not call napi_hash_del() (diff)
downloadkernel-qcow2-linux-5f00a8d8a2c2fd99528ab1a3632f0e77f4d25202.tar.gz
kernel-qcow2-linux-5f00a8d8a2c2fd99528ab1a3632f0e77f4d25202.tar.xz
kernel-qcow2-linux-5f00a8d8a2c2fd99528ab1a3632f0e77f4d25202.zip
cxgb4: do not call napi_hash_del()
Calling napi_hash_del() before netif_napi_del() is dangerous if a synchronize_rcu() is not enforced before NAPI struct freeing. Lets leave this detail to core networking stack and feel more comfortable. Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Hariprasad S <hariprasad@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet')
-rw-r--r--drivers/net/ethernet/chelsio/cxgb4/sge.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/sge.c b/drivers/net/ethernet/chelsio/cxgb4/sge.c
index 1e74fd6085df..e19a0ca8e5dd 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/sge.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/sge.c
@@ -2951,7 +2951,6 @@ void free_rspq_fl(struct adapter *adap, struct sge_rspq *rq,
rq->cntxt_id, fl_id, 0xffff);
dma_free_coherent(adap->pdev_dev, (rq->size + 1) * rq->iqe_len,
rq->desc, rq->phys_addr);
- napi_hash_del(&rq->napi);
netif_napi_del(&rq->napi);
rq->netdev = NULL;
rq->cntxt_id = rq->abs_id = 0;