On Wed, Sep 23, 2015 at 11:31:31AM +0000, Daniel Swahn wrote:
> (gdb) frame 0
> #0 0x00000000004291ca in rstp_run (ofproto=<optimized out>,
> ofproto=<optimized out>) at ofproto/ofproto-dpif.c:2278
> 2278 bundle_move(((struct ofport_dpif
> *)rstp_get_old_root_aux(ofproto->rstp))->bundle,
Thanks for the report.
Jarno and Daniele, the code around line 2278 in v2.4.0 is this:
if (rstp_shift_root_learned_address(ofproto->rstp)) {
bundle_move(((struct ofport_dpif
*)rstp_get_old_root_aux(ofproto->rstp))->bundle,
((struct ofport_dpif
*)rstp_get_new_root_aux(ofproto->rstp))->bundle);
rstp_reset_root_changed(ofproto->rstp);
}
Looking at lib/rstp*.[ch], I see some code that sets 'old_root_aux' and
'new_root_aux'. I don't see any code that clears them or updates them
if something happens to invalidate them (that is, if a port gets deleted
or if its aux gets updated). I suspect that this may be the problem
here.
Jarno or Daniele, can you confirm this?
_______________________________________________
discuss mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/discuss