projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
21c8597
)
r8169: don't try to disable interrupts if NAPI is scheduled already
author
Heiner Kallweit
<hkallweit1@gmail.com>
Fri, 5 Feb 2021 21:48:53 +0000
(22:48 +0100)
committer
Jakub Kicinski
<kuba@kernel.org>
Sat, 6 Feb 2021 23:12:39 +0000
(15:12 -0800)
There's no benefit in trying to disable interrupts if NAPI is
scheduled already. This allows us to save a PCI write in this case.
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link:
https://lore.kernel.org/r/78c7f2fb-9772-1015-8c1d-632cbdff253f@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/realtek/r8169_main.c
patch
|
blob
|
history
diff --git
a/drivers/net/ethernet/realtek/r8169_main.c
b/drivers/net/ethernet/realtek/r8169_main.c
index 7b053a1f6d5992d17ebc6ab58c40ca4bf9faa875..04231585ef79afbafe08616a3fd9918eb05097b0 100644
(file)
--- a/
drivers/net/ethernet/realtek/r8169_main.c
+++ b/
drivers/net/ethernet/realtek/r8169_main.c
@@
-4549,8
+4549,10
@@
static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance)
rtl_schedule_task(tp, RTL_FLAG_TASK_RESET_PENDING);
}
- rtl_irq_disable(tp);
- napi_schedule(&tp->napi);
+ if (napi_schedule_prep(&tp->napi)) {
+ rtl_irq_disable(tp);
+ __napi_schedule(&tp->napi);
+ }
out:
rtl_ack_events(tp, status);