[quagga-dev 7398] Re: [PATCH 0/7] ospfd: Fix and cleanup nbrs
joakim.tjernlund at transmode.se
Sat Nov 21 11:53:16 GMT 2009
Bartek Kania <mrbk at gnarf.org> wrote on 21/11/2009 11:39:39:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> On Thu, 19 Nov 2009, Joakim Tjernlund wrote:
> > Bartek, here you have a bunch of patches to test :)
> > The most interseting for your problem is:
> > ospfd: Self nbrs needs to be rebuilt when router ID changes.
> > Please try all patches and if there are problems, back out
> > one pacth at the time, starting from 7 and work your
> > way backwards.
> I've applied all patches and the problem persists.
> However I think the valgrind traces are a bit different. The traces
> include "ospf_router_id_update()"
> I've attached the trace to this email.
> Your patches don't seem to break anything that wasn't broken
> before. So at least they didn't make it worse =)
> Do you still want me to back them out one by one and see if anything
Nope, I found the problem I think.
> Other tests
> Not setting a router-id, ospfd crashes.
> Setting router-id in ospfd.conf, ospfd works fine.
> Setting router-id in zebra.conf, ospfd crashes.
> Starting ospfd without a vlink, ospfd works fine.
> Adding "area 0.0.0.42 virtual-link x.y.A.B" after ospfd is started
> via vtysh, ospfd still works fine and vlink connects as it should.
> THe problem only appears when ospfd is started with no router-id def
> in the config, and a vlink in the config. If router-id is present or
> vlink is configured after ospfd start then all is good.
> So it appears that some neighbors are created before ospfd decides
> what router-id it has and then ospfd gets confused or somesuch.
This all confirm my theory but the fix was somewhat wrong :)
cold you change patch ospfd: Self nbrs needs to be rebuilt when router ID changes.
+ oi->nbr_self = ospf_nbr_new (oi);
Will be offline as of tomorrow until Thursday.
More information about the Quagga-dev