ramips: fix for kernel 4.0 napi repoll need return budgets number
[openwrt/svn-archive/archive.git] / target / linux / ramips / files / drivers / net / ethernet / ralink / ralink_soc_eth.c
index 05b810a78a1f14e62222b523bcba57972b0a45ba..0f3009cc7335f5d61a57c39510b27d2d06098ecb 100644 (file)
@@ -991,8 +991,11 @@ static int fe_poll(struct napi_struct *napi, int budget)
 
        if (!tx_again && (rx_done < budget)) {
                status = fe_reg_r32(FE_REG_FE_INT_STATUS);
-               if (status & (tx_intr | rx_intr ))
+               if (status & (tx_intr | rx_intr)) {
+                       /* let napi poll again */
+                       rx_done = budget;
                        goto poll_again;
+               }
 
                napi_complete(napi);
                fe_int_enable(tx_intr | rx_intr);