vmxnet3: do not reschedule napi for rx processing
Commit '2c5a5748105a ("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: 2c5a574810
("vmxnet3: add support for out of order rx completion")
Signed-off-by: Ronak Doshi <doshir@vmware.com>
Acked-by: Guolin Yang <gyang@vmware.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1c7249e4af
commit
5b91884bf5
|
@ -2075,17 +2075,8 @@ vmxnet3_poll_rx_only(struct napi_struct *napi, int budget)
|
|||
rxd_done = vmxnet3_rq_rx_complete(rq, adapter, budget);
|
||||
|
||||
if (rxd_done < budget) {
|
||||
struct Vmxnet3_RxCompDesc *rcd;
|
||||
#ifdef __BIG_ENDIAN_BITFIELD
|
||||
struct Vmxnet3_RxCompDesc rxComp;
|
||||
#endif
|
||||
napi_complete_done(napi, rxd_done);
|
||||
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;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue