ramips: fix for kernel 4.0 napi repoll need return budgets number
authorFelix Fietkau <nbd@openwrt.org>
Fri, 30 Oct 2015 22:32:49 +0000 (22:32 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Fri, 30 Oct 2015 22:32:49 +0000 (22:32 +0000)
Signed-off-by: Michael Lee <igvtee@gmail.com>
SVN-Revision: 47306

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);