Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Nov 2003 09:32:12 -0800
From:      Sam Leffler <sam@errno.com>
To:        Brian Feldman <green@FreeBSD.org>, src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/netinet ip_divert.c ip_input.c
Message-ID:  <200311170932.12308.sam@errno.com>
In-Reply-To: <200311170317.hAH3HnIW057958@repoman.freebsd.org>
References:  <200311170317.hAH3HnIW057958@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday 16 November 2003 07:17 pm, Brian Feldman wrote:
> green       2003/11/16 19:17:49 PST
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/netinet          ip_divert.c ip_input.c
>   Log:
>   Fix a few cases where MT_TAG-type "fake mbufs" are created on the stack,
> but do not have mh_nextpkt initialized.  Somtimes what's there is "1", and
> the ip_input() code pukes trying to m_free() it, rendering divert sockets
> and such broken.
>   This really underscores the need to get rid of MT_TAG.

I've got most of the changes for that done along with mods to cleanup the 
"backdoor linkage" between parts of the network code; but it's not ready to 
commit yet.  Switching over dummynet cleans up that code (IMO) and adds no 
cost as there was already a malloc'd data structure for each packet, but ipfw 
is a bit more tricky.  The goal of all this is to eliminate all MT_TAG usage 
and also the global function pointer hooks (the latter are replaced by 
pfil_hooks which then become necessary for many packages and so will be 
needed in a GENERIC kernel).

	Sam



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311170932.12308.sam>