]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ibmveth: Do not process frames after calling napi_reschedule
authorThomas Falcon <tlfalcon@linux.ibm.com>
Thu, 24 Jan 2019 17:17:01 +0000 (11:17 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Mar 2019 07:18:53 +0000 (08:18 +0100)
[ Upstream commit e95d22c69b2c130ccce257b84daf283fd82d611e ]

The IBM virtual ethernet driver's polling function continues
to process frames after rescheduling NAPI, resulting in a warning
if it exhausted its budget. Do not restart polling after calling
napi_reschedule. Instead let frames be processed in the following
instance.

Signed-off-by: Thomas Falcon <tlfalcon@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/ibm/ibmveth.c

index 427a6674d237bc76c29e6fb350d3315cb8a8aa88..f0301b1ff56cb28d83f0519b984ba37fd715af7b 100644 (file)
@@ -1085,7 +1085,6 @@ static int ibmveth_poll(struct napi_struct *napi, int budget)
        int frames_processed = 0;
        unsigned long lpar_rc;
 
-restart_poll:
        while (frames_processed < budget) {
                if (!ibmveth_rxq_pending_buffer(adapter))
                        break;
@@ -1154,7 +1153,6 @@ restart_poll:
                    napi_reschedule(napi)) {
                        lpar_rc = h_vio_signal(adapter->vdev->unit_address,
                                               VIO_IRQ_DISABLE);
-                       goto restart_poll;
                }
        }