svn commit: r189106 - in head/sys: compat/linprocfs compat/linux compat/svr4 contrib/altq/altq contrib/pf/net dev/cxgb/ulp/iw_cxgb kern net net80211 netgraph netgraph/atm netinet netinet6 netipsec ...

Bjoern A. Zeeb bz at FreeBSD.org
Fri Feb 27 06:17:14 PST 2009


On Fri, 27 Feb 2009, Bjoern A. Zeeb wrote:

> Author: bz
> Date: Fri Feb 27 14:12:05 2009
> New Revision: 189106
> URL: http://svn.freebsd.org/changeset/base/189106
>
> Log:
>  For all files including net/vnet.h directly include opt_route.h and
>  net/route.h.
>
>  Remove the hidden include of opt_route.h and net/route.h from net/vnet.h.
>
>  We need to make sure that both opt_route.h and net/route.h are included
>  before net/vnet.h because of the way MRT figures out the number of FIBs
>  from the kernel option. If we do not, we end up with the default number
>  of 1 when including net/vnet.h and array sizes are wrong.
>
>  This does not change the list of files which depend on opt_route.h
>  but we can identify them now more easily.

and before anyone is going to start a bikeshed:

- Yes it's the nth time things are shuffled around because of this.

- I don't like it either.

- The proper ordering is needed for the moment.

- Another upcoming change would have tripped over this and broken
   LINTs which have a non-default (1) number of ROUTETABLES=2.

- People are thinking of a better solution for the
 	struct  radix_node_head *_rt_tables[RT_MAXFIBS][AF_MAX+1];
   in net/vnet.h.


/bz


-- 
Bjoern A. Zeeb                      The greatest risk is not taking one.


More information about the svn-src-all mailing list