diff options
author | Hayes Wang | 2023-09-08 15:01:52 +0800 |
---|---|---|
committer | Greg Kroah-Hartman | 2023-09-19 12:28:09 +0200 |
commit | 2323397e5877c50699f81aec4a86222fc8c0f141 (patch) | |
tree | 673786a19d5a768b0b7646bb8e903c4f1d607781 /drivers/net/usb | |
parent | 44c8ffd482cc8376ec3f7c4db3380c640733f412 (diff) |
r8152: check budget for r8152_poll()
[ Upstream commit a7b8d60b37237680009dd0b025fe8c067aba0ee3 ]
According to the document of napi, there is no rx process when the
budget is 0. Therefore, r8152_poll() has to return 0 directly when the
budget is equal to 0.
Fixes: d2187f8e4454 ("r8152: divide the tx and rx bottom functions")
Signed-off-by: Hayes Wang <hayeswang@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/net/usb')
-rw-r--r-- | drivers/net/usb/r8152.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c index 059d610901d8..fc1458f96e17 100644 --- a/drivers/net/usb/r8152.c +++ b/drivers/net/usb/r8152.c @@ -2628,6 +2628,9 @@ static int r8152_poll(struct napi_struct *napi, int budget) struct r8152 *tp = container_of(napi, struct r8152, napi); int work_done; + if (!budget) + return 0; + work_done = rx_bottom(tp, budget); if (work_done < budget) { |