]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
s390/qeth: keep IRQ disabled until NAPI is really done
authorJulian Wiedmann <jwi@linux.ibm.com>
Thu, 31 Oct 2019 12:42:17 +0000 (13:42 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 31 Oct 2019 19:32:59 +0000 (12:32 -0700)
When napi_complete_done() returns false, the NAPI instance is still
active and we can keep the IRQ disabled a little longer.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_core_main.c

index 52e3adb7864a14b16e1d4c26f03b22514e299c7f..d4e66707a03fe27ab41201252c771a1e48153f3a 100644 (file)
@@ -5213,9 +5213,9 @@ int qeth_poll(struct napi_struct *napi, int budget)
                }
        }
 
-       napi_complete_done(napi, work_done);
-       if (qdio_start_irq(card->data.ccwdev, 0))
-               napi_schedule(&card->napi);
+       if (napi_complete_done(napi, work_done) &&
+           qdio_start_irq(CARD_DDEV(card), 0))
+               napi_schedule(napi);
 out:
        return work_done;
 }