Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Sep 2008 01:10:12 -0700
From:      Julian Elischer <julian@elischer.org>
To:        Marko Zec <zec@FreeBSD.org>
Cc:        FreeBSD virtualization mailing list <freebsd-virtualization@freebsd.org>
Subject:   Vnet iteration
Message-ID:  <48C780E4.2050207@elischer.org>
In-Reply-To: <200809081655.m88GtxbV000906@repoman.freebsd.org>
References:  <200809081655.m88GtxbV000906@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Marko Zec wrote:
> http://perforce.freebsd.org/chv.cgi?CH=149433
> 
> Change 149433 by zec@zec_tpx32 on 2008/09/08 16:55:34
> 
> 	First-cut replacement of VNET_ITERLOOP_BEGIN() /
> 	VNET_ITERLOOP_END() kludges with VNET_FOREACH() constructs
> 	discussed at freebsd-virtualization@
> 	
> 	Needs a bit more testing before merging over to
> 	vimage-commit2 branch.
> 
> Affected files ...
> 
> .. //depot/projects/vimage/src/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c#3 edit
> .. //depot/projects/vimage/src/sys/kern/kern_vimage.c#66 edit
> .. //depot/projects/vimage/src/sys/net/if.c#36 edit
> .. //depot/projects/vimage/src/sys/net/if_ef.c#6 edit
> .. //depot/projects/vimage/src/sys/net80211/ieee80211_ddb.c#8 edit
> .. //depot/projects/vimage/src/sys/netgraph/atm/ng_atm.c#6 edit
> .. //depot/projects/vimage/src/sys/netgraph/ng_gif.c#7 edit
> .. //depot/projects/vimage/src/sys/netinet/igmp.c#15 edit
> .. //depot/projects/vimage/src/sys/netinet/in_pcb.c#29 edit
> .. //depot/projects/vimage/src/sys/netinet/in_rmx.c#18 edit
> .. //depot/projects/vimage/src/sys/netinet/ip_input.c#32 edit
> .. //depot/projects/vimage/src/sys/netinet/tcp_subr.c#47 edit
> .. //depot/projects/vimage/src/sys/netinet/tcp_timer.c#20 edit
> .. //depot/projects/vimage/src/sys/netinet6/frag6.c#17 edit
> .. //depot/projects/vimage/src/sys/netipsec/key.c#20 edit
> .. //depot/projects/vimage/src/sys/sys/vimage.h#63 edit
> 
> Differences ...

[...]

> +	VNET_FOREACH(vnet_iter) {
> +		CURVNET_SET(vnet_iter);	/* XXX CURVNET_SET_QUIET() ? */
> +		INIT_VNET_NET(vnet_iter);
> +		TAILQ_FOREACH(ifp, &V_ifnet, if_link)
> +			(void)ifaddr_event_handler(NULL, ifp);
> +		CURVNET_RESTORE();
>  	}


this looks great..

I'd like to see as much of this as possible in commit2
and then I'd like to see it committed as soon as brokk, bz and others 
have kicked the t[yi]res a bit.
  :-)



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