On 24/04/14(Thu) 18:17, Alexander Bluhm wrote:
> On Thu, Apr 24, 2014 at 01:43:16PM +0200, Henning Brauer wrote:
> > * Martin Pieuchot <mpieuc...@nolizard.org> [2014-04-24 13:24]:
> > > This ifp pointer is only needed by rt_getifa() to find an address, so
> > > make it a local variable.
> > > 
> > > The rtrequest1(9) change might introduce a negligible slowdown since
> > > I remove the already known ifp pointer.  But this only happens in the
> > > case described in the comment just before and I would bet because of
> > > carp_setroute(), still nobody to fix this?  It's not better than
> > > OpenSSL...
> > > 
> > > In the rtsock chunk, the two pointers are equivalent.
> > > 
> > > Ok?
> > 
> > yup.
> > 
> > the carp route fiddling is pretty damn mad, and with the route
> > priorities and the ability to mark routes as down there should be a
> > much cleaner way to do this these days.
> > heck, the entire carp route fiddling needs to be reassesed. things
> > changed, i can\t even fully remeber why it is there (i think it was
> > about backup nodes still being able to reach a network only present on
> > the carp if or the like), and i seem to remember it doesn't quite work
> > as expected anyway, but don't take my word for it, memory REALLY fuzzy
> > on that front.
> 
> Years ago mpf@ told me, that the purpose of this function is to ssh
> from a carp master to a carp slave via the carp address.  Or was
> it the other way around?
> 
> The carp_setroute() function starts with the encouraging comment
> /* XXX this mess needs fixing */.  When switching carp states fast,
> the routing table gets messed up.  In our product we removed all
> calls to carp_setroute(sc, RTM_DELETE).  There is one carp_setroute(sc,
> RTM_ADD) left.  I don't know wether it is needed.  I would recommend
> to try to delete the whole function and fix fallout if any.

I totally support this idea.  I even briefly tried that some months ago
without seeing any breakage for *my* use case of carp.

Reply via email to