From: Xue Chaojing Date: Tue, 20 Nov 2018 05:47:34 +0000 (+0000) Subject: net-next/hinic: fix a bug in rx data flow X-Git-Tag: v4.19.89~182 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f04eee4042ab74a240fb39daf0e089cf3cee35c5;p=thirdparty%2Fkernel%2Fstable.git net-next/hinic: fix a bug in rx data flow [ Upstream commit b1a200484143a727ce293e0f200a543cc7584152 ] In rx_alloc_pkts(), there is a loop call of tasklet, which causes 100% cpu utilization, even no packets are being received. This patch fixes this bug. Signed-off-by: Xue Chaojing Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- diff --git a/drivers/net/ethernet/huawei/hinic/hinic_rx.c b/drivers/net/ethernet/huawei/hinic/hinic_rx.c index 4c0f7eda1166c..06b24a92ed7d4 100644 --- a/drivers/net/ethernet/huawei/hinic/hinic_rx.c +++ b/drivers/net/ethernet/huawei/hinic/hinic_rx.c @@ -207,9 +207,9 @@ skb_out: wmb(); /* write all the wqes before update PI */ hinic_rq_update(rxq->rq, prod_idx); + tasklet_schedule(&rxq->rx_task); } - tasklet_schedule(&rxq->rx_task); return i; }