ehea: Remove force_irq logic in napi poll routine
[pandora-kernel.git] / drivers / net / ethernet / ibm / ehea / ehea_main.c
index a6c4192..4032a0a 100644 (file)
@@ -926,7 +926,6 @@ static struct ehea_cqe *ehea_proc_cqes(struct ehea_port_res *pr, int my_quota)
        return cqe;
 }
 
-#define EHEA_NAPI_POLL_NUM_BEFORE_IRQ 16
 #define EHEA_POLL_MAX_CQES 65535
 
 static int ehea_poll(struct napi_struct *napi, int budget)
@@ -936,18 +935,13 @@ static int ehea_poll(struct napi_struct *napi, int budget)
        struct net_device *dev = pr->port->netdev;
        struct ehea_cqe *cqe;
        struct ehea_cqe *cqe_skb = NULL;
-       int force_irq, wqe_index;
+       int wqe_index;
        int rx = 0;
 
-       force_irq = (pr->poll_counter > EHEA_NAPI_POLL_NUM_BEFORE_IRQ);
        cqe_skb = ehea_proc_cqes(pr, EHEA_POLL_MAX_CQES);
+       rx += ehea_proc_rwqes(dev, pr, budget - rx);
 
-       if (!force_irq)
-               rx += ehea_proc_rwqes(dev, pr, budget - rx);
-
-       while ((rx != budget) || force_irq) {
-               pr->poll_counter = 0;
-               force_irq = 0;
+       while (rx != budget) {
                napi_complete(napi);
                ehea_reset_cq_ep(pr->recv_cq);
                ehea_reset_cq_ep(pr->send_cq);
@@ -967,7 +961,6 @@ static int ehea_poll(struct napi_struct *napi, int budget)
                rx += ehea_proc_rwqes(dev, pr, budget - rx);
        }
 
-       pr->poll_counter++;
        return rx;
 }