ibmveth: enable interrupts after napi_complete()

The interrupt is enabled before napi_complete(). A network timeout
occurs if the interrupt handler is called before napi_complete().

Fix the bug by enabling the interrupt after napi_complete().

Signed-off-by: Yongbae Park <yongbae2@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Yongbae Park 2015-03-10 11:15:39 +09:00 committed by David S. Miller
parent 5778d39d07
commit 4736edc764

View File

@ -1136,6 +1136,8 @@ static int ibmveth_poll(struct napi_struct *napi, int budget)
ibmveth_replenish_task(adapter);
if (frames_processed < budget) {
napi_complete(napi);
/* We think we are done - reenable interrupts,
* then check once more to make sure we are done.
*/
@ -1144,8 +1146,6 @@ static int ibmveth_poll(struct napi_struct *napi, int budget)
BUG_ON(lpar_rc != H_SUCCESS);
napi_complete(napi);
if (ibmveth_rxq_pending_buffer(adapter) &&
napi_reschedule(napi)) {
lpar_rc = h_vio_signal(adapter->vdev->unit_address,