mirror of https://gitee.com/openkylin/linux.git
bridge: message age needs to increase, not decrease.
commit bridge: send proper message_age in config BPDU added this gem: bpdu.message_age = (jiffies - root->designated_age) p->designated_age = jiffies + bpdu->message_age; Notice how bpdu->message_age is negated when reassigned to bpdu.message_age. This causes message age to decrease breaking the STP protocol. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
aaca735f4f
commit
709e1b5cd9
|
@ -186,7 +186,7 @@ static void br_record_config_information(struct net_bridge_port *p,
|
|||
p->designated_cost = bpdu->root_path_cost;
|
||||
p->designated_bridge = bpdu->bridge_id;
|
||||
p->designated_port = bpdu->port_id;
|
||||
p->designated_age = jiffies + bpdu->message_age;
|
||||
p->designated_age = jiffies - bpdu->message_age;
|
||||
|
||||
mod_timer(&p->message_age_timer, jiffies
|
||||
+ (p->br->max_age - bpdu->message_age));
|
||||
|
|
Loading…
Reference in New Issue