net: ipa: don't be a hog in gsi_channel_poll()
authorAlex Elder <elder@linaro.org>
Fri, 15 May 2020 19:52:03 +0000 (14:52 -0500)
committerDavid S. Miller <davem@davemloft.net>
Sat, 16 May 2020 22:14:54 +0000 (15:14 -0700)
The iteration count value used in gsi_channel_poll() is intended to
limit poll iterations to the budget supplied as an argument.  But
it's never updated.

Fix this bug by incrementing the count each time through the loop.

Reported-by: Sharath Chandra Vurukala <sharathv@codeaurora.com>
Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ipa/gsi.c

index b671bea..8d9ca1c 100644 (file)
@@ -1392,6 +1392,7 @@ static int gsi_channel_poll(struct napi_struct *napi, int budget)
        while (count < budget) {
                struct gsi_trans *trans;
 
+               count++;
                trans = gsi_channel_poll_one(channel);
                if (!trans)
                        break;