]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
net: macb: Replace open-coded implementation with napi_schedule()
authorKevin Hao <haokexin@gmail.com>
Thu, 2 Apr 2026 13:41:22 +0000 (21:41 +0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 3 Apr 2026 22:51:04 +0000 (15:51 -0700)
The driver currently duplicates the logic of napi_schedule() primarily
to include additional debug information. However, these debug details
are not essential for a specific driver and can be effectively obtained
through existing tracepoints in the networking core, such as
/sys/kernel/tracing/events/napi/napi_poll. Therefore, this patch
replaces the open-coded implementation with napi_schedule() to
simplify the driver's code.

Signed-off-by: Kevin Hao <haokexin@gmail.com>
Link: https://patch.msgid.link/20260402-macb-irq-v2-1-942d98ab1154@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/cadence/macb_main.c

index 7f061d7c95af9aec37f73d3529a8cb276b263452..8983e2f5b04a832c1b5fed285d02f19e605652a9 100644 (file)
@@ -2120,10 +2120,7 @@ static irqreturn_t macb_interrupt(int irq, void *dev_id)
                        if (bp->caps & MACB_CAPS_ISR_CLEAR_ON_WRITE)
                                queue_writel(queue, ISR, MACB_BIT(RCOMP));
 
-                       if (napi_schedule_prep(&queue->napi_rx)) {
-                               netdev_vdbg(bp->dev, "scheduling RX softirq\n");
-                               __napi_schedule(&queue->napi_rx);
-                       }
+                       napi_schedule(&queue->napi_rx);
                }
 
                if (status & (MACB_BIT(TCOMP) |
@@ -2138,10 +2135,7 @@ static irqreturn_t macb_interrupt(int irq, void *dev_id)
                                wmb(); // ensure softirq can see update
                        }
 
-                       if (napi_schedule_prep(&queue->napi_tx)) {
-                               netdev_vdbg(bp->dev, "scheduling TX softirq\n");
-                               __napi_schedule(&queue->napi_tx);
-                       }
+                       napi_schedule(&queue->napi_tx);
                }
 
                if (unlikely(status & (MACB_TX_ERR_FLAGS))) {