I see, What you are saying is the "rtalloc()" call does not have an indicator whether it should be searching for an interface route or not.
In the case when RADIX_MPATH is enabled, in_lltable_rtcheck() needs to walk the ECMP route chain to find an interface route. yes ? -- Qing ________________________________________ From: owner-freebsd-...@freebsd.org [owner-freebsd-...@freebsd.org] on behalf of Ingo Flaschberger [i...@freebsd.org] Sent: Tuesday, April 05, 2011 8:31 AM Cc: Nikolay Denev; freebsd-net@freebsd.org Subject: Re: Routing enhancement - reduce routing table locking >> Can you say something more about : >> "implement some multipath changes to use a direct attached >> interface route and a real route, used some OpenBSD code" >> >> I've looked at the patch but it's not obvious to me. >> >> P.S.: I've just saw your reply to kern/155772 and was wondering if this >> patch can help. > > regarding kern/155772: > at stock 8.2 FreeBSD the system panics after ifconfig down / ifconfig up / > ifconfig down with 1 route and 1 interface route (multipath). > > Also there are problems with arp, due wrong multipath route selection > (if the decision is already made that the route should go the direct way, the > route and not the interface route is choosen, depends on which route was > first in the tree). see "in_lltable_rtcheck" > And finally, there are problems when adding / deleteing routes. > > example that does not work: > ifconfig em0 192.168.0.1/24 > ifconfig em1 10.0.0.1/24 > route add 10.0.0.0/24 192.168.0.2 > > example that currently works with 8.2: > ifconfig em0 192.168.0.1/24 > ifconfig em1 10.0.0.1/24 > route add 172.16.0.0/24 192.168.0.2 > route add 172.16.0.0/24 10.0.0.2 > > Kind regards, > Ingo Flaschberger _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"