Re: [PATCH V3 net-next 3/4] net: dsa: mv88e6xxx: mac-auth/MAB implementation

From: Vladimir Oltean
Date: Wed Jul 06 2022 - 09:28:48 EST


On Tue, Jul 05, 2022 at 05:05:52PM +0200, Hans S wrote:
> Hi, does anybody know what it going on with this variable?
> struct dsa_port *dp ->ageing_time;
>
> I experience that it changes value like a factor ~10 at times.

Could you be a bit more specific? Are you talking about STP Topology
Change Notification BPDUs, which trigger this code path?

diff --git a/net/bridge/br_stp.c b/net/bridge/br_stp.c
index 7d27b2e6038f..9b25bc2dcb3e 100644
--- a/net/bridge/br_stp.c
+++ b/net/bridge/br_stp.c
@@ -671,10 +671,10 @@ void __br_set_topology_change(struct net_bridge *br, unsigned char val)

if (val) {
t = 2 * br->forward_delay;
- br_debug(br, "decreasing ageing time to %lu\n", t);
+ br_info(br, "decreasing ageing time to %lu\n", t);
} else {
t = br->bridge_ageing_time;
- br_debug(br, "restoring ageing time to %lu\n", t);
+ br_info(br, "restoring ageing time to %lu\n", t);
}

err = __set_ageing_time(br->dev, t);

Coincidentally the default values of 2 * br->forward_delay and br->bridge_ageing_time
are 1 order of magnitude apart from each other.

[ 139.998310] br0: topology change detected, propagating
[ 140.003490] br0: decreasing ageing time to 3000
[ 175.193054] br0: restoring ageing time to 30000

What's the problem anyway?