[PATCH net 1/2] net: macb: zero the link settings taprio reads back

From: Aleksei Sviridkin

Date: Wed Sep 02 2026 - 04:11:52 EST


phylink_ethtool_ksettings_get() fills only what the current link mode
provides. With no PHY attached it writes port and supported; on a fixed
or in-band link it also writes speed and duplex, but only if
base.rate_matching already reads RATE_MATCH_NONE, a field it never
writes itself and so takes from the caller. The ethtool core zeroes the
structure on every path into the op, so its callers never notice; the
taprio path passes a stack variable and reads a speed nobody wrote.

Fixes: 89934dbf169e ("net: macb: Add TAPRIO traffic scheduling support")
Assisted-by: LLM
Signed-off-by: Aleksei Sviridkin <f@xxxxxx>
---
drivers/net/ethernet/cadence/macb_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c
index 76ee4f506033..a43855db1e45 100644
--- a/drivers/net/ethernet/cadence/macb_main.c
+++ b/drivers/net/ethernet/cadence/macb_main.c
@@ -4297,7 +4297,7 @@ static int macb_taprio_setup_replace(struct net_device *netdev,
struct macb_queue_enst_config *enst_queue;
struct tc_taprio_sched_entry *entry;
struct macb *bp = netdev_priv(netdev);
- struct ethtool_link_ksettings kset;
+ struct ethtool_link_ksettings kset = {};
struct macb_queue *queue;
u32 queue_mask;
u8 queue_id;
--
2.53.0