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>