Commit 5b91884b authored by Ronak Doshi's avatar Ronak Doshi Committed by David S. Miller

vmxnet3: do not reschedule napi for rx processing

Commit '2c5a5748 ("vmxnet3: add support for out of order rx
completion")' added support for out of order rx completion. Within
that patch, an enhancement was done to reschedule napi for processing
rx completions.

However, it can lead to missing an interrupt. So, this patch reverts
that part of the code.

Fixes: 2c5a5748 ("vmxnet3: add support for out of order rx completion")
Signed-off-by: default avatarRonak Doshi <doshir@vmware.com>
Acked-by: default avatarGuolin Yang <gyang@vmware.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1c7249e4
...@@ -2075,17 +2075,8 @@ vmxnet3_poll_rx_only(struct napi_struct *napi, int budget) ...@@ -2075,17 +2075,8 @@ vmxnet3_poll_rx_only(struct napi_struct *napi, int budget)
rxd_done = vmxnet3_rq_rx_complete(rq, adapter, budget); rxd_done = vmxnet3_rq_rx_complete(rq, adapter, budget);
if (rxd_done < budget) { if (rxd_done < budget) {
struct Vmxnet3_RxCompDesc *rcd;
#ifdef __BIG_ENDIAN_BITFIELD
struct Vmxnet3_RxCompDesc rxComp;
#endif
napi_complete_done(napi, rxd_done); napi_complete_done(napi, rxd_done);
vmxnet3_enable_intr(adapter, rq->comp_ring.intr_idx); vmxnet3_enable_intr(adapter, rq->comp_ring.intr_idx);
/* after unmasking the interrupt, check if any descriptors were completed */
vmxnet3_getRxComp(rcd, &rq->comp_ring.base[rq->comp_ring.next2proc].rcd,
&rxComp);
if (rcd->gen == rq->comp_ring.gen && napi_reschedule(napi))
vmxnet3_disable_intr(adapter, rq->comp_ring.intr_idx);
} }
return rxd_done; return rxd_done;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment