Route messages
Andre Oppermann
andre at freebsd.org
Wed Jul 2 13:51:24 UTC 2008
Bjoern A. Zeeb wrote:
> On Tue, 1 Jul 2008, Bjoern A. Zeeb wrote:
>
> Hi,
>
>> On Tue, 1 Jul 2008, Andre Oppermann wrote:
>>
>> Hi,
>>
>>> Mike Tancsa wrote:
>>>> I am thinking
>>>>
>>>> http://lists.freebsd.org/pipermail/cvs-src/2008-April/090303.html
>>>> is the commit ? If I revert to the prev version, the issue goes away.
>>
>> Ha, I finally know why I ended up on Cc: of a thread I had no idea
>> about. Someone could have told me instead of blindly adding me;-)
>>
>>
>>> Yes, this change doesn't look right. It should only do the route
>>> lookup in ip_input.c when there was an EMSGSIZE error returned by
>>> ip_output(). The rtalloc_ign() call causes the message to be sent
>>> because it always sets report to one. The default message is RTM_MISS.
>>>
>>> I'll try to prep an updated patch which doesn't have these issues later
>>> today.
>>
>> Yeah my bad. Sorry.
>>
>> If you do that, do not do an extra route lookup if possible, correct
>> the rtalloc call. Thanks.
>
> So I had a very quick look at the code between doing something else.
> I think the only change needed is this if I am not mistaken but my
> head is far away nowhere close enough in this code.
>
> Andre, could you review this?
Yes, this should fix the problem. I haven't tested the patch though.
--
Andre
> Index: sys/netinet/ip_input.c
> ===================================================================
> RCS file: /shared/mirror/FreeBSD/r/ncvs/src/sys/netinet/ip_input.c,v
> retrieving revision 1.332.2.2
> diff -u -p -r1.332.2.2 ip_input.c
> --- sys/netinet/ip_input.c 22 Apr 2008 12:02:55 -0000 1.332.2.2
> +++ sys/netinet/ip_input.c 1 Jul 2008 09:23:08 -0000
> @@ -1363,7 +1363,6 @@ ip_forward(struct mbuf *m, int srcrt)
> * the ICMP_UNREACH_NEEDFRAG "Next-Hop MTU" field described in
> RFC1191.
> */
> bzero(&ro, sizeof(ro));
> - rtalloc_ign(&ro, RTF_CLONING);
>
> error = ip_output(m, NULL, &ro, IP_FORWARDING, NULL, NULL);
>
>
More information about the freebsd-net
mailing list