Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Mar 2013 11:23:57 -0500
From:      Ed Maste <emaste@freebsd.org>
To:        "Andrey V. Elsukov" <ae@freebsd.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: [PATCH] Handle PACKET_TAG_IPFORWARD and TIMEWAIT state
Message-ID:  <CAPyFy2DMmpy62yDRbMNHEs58qiJPs1pZYk%2BjWQrr%2B5RZ0QeYAA@mail.gmail.com>
In-Reply-To: <5130CF14.4090606@FreeBSD.org>
References:  <20130228191035.GA36576@sandvine.com> <CAPyFy2B%2BnX%2B-0JdVNazs7k=p30HuNWUjeEyRppPj-p8REtdf=A@mail.gmail.com> <5130CF14.4090606@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 1 March 2013 10:53, Andrey V. Elsukov <ae@freebsd.org> wrote:
> On 01.03.2013 01:06, Ed Maste wrote:
>> On 28 February 2013 14:10, Ed Maste <emaste@freebsd.org> wrote:
>>> The attached patch keeps the fwd_tag
>>> around until finished with pcb lookup.
>>
>> There's a small bug in that patch - a corrected version, which handles
>> a NULL return from m_tag_find, can be found at:
>> http://people.freebsd.org/~emaste/patches/fwd_tag_findpcb.diff
>
> Hi Ed,
>
> it seems this problem was there before my breakage.

Yes, I had a chat with glebius@ about it, and it looks like this
problem has existed for years.

> Also, it think that m_tag_unlink is redundant here, because you clear
> the M_IP_NEXTHOP/M_IP6_NEXTHOP flag.

I split the old m_tag_delete into m_tag_unlink after finding the tag,
and m_tag_free on the exit paths from the pcb lookup.  I could leave
it attached to the mbuf and m_tag_delete it in the cases I modified,
although I don't think it makes much difference.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAPyFy2DMmpy62yDRbMNHEs58qiJPs1pZYk%2BjWQrr%2B5RZ0QeYAA>