From owner-p4-projects@FreeBSD.ORG Thu May 15 07:14:08 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C7516106567F; Thu, 15 May 2008 07:14:07 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 70721106567B for ; Thu, 15 May 2008 07:14:07 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 600158FC1C for ; Thu, 15 May 2008 07:14:07 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m4F7E7vW019382 for ; Thu, 15 May 2008 07:14:07 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m4F7E7to019380 for perforce@freebsd.org; Thu, 15 May 2008 07:14:07 GMT (envelope-from julian@freebsd.org) Date: Thu, 15 May 2008 07:14:07 GMT Message-Id: <200805150714.m4F7E7to019380@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Cc: Subject: PERFORCE change 141633 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 May 2008 07:14:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=141633 Change 141633 by julian@julian_trafmon1 on 2008/05/15 07:13:15 a bit further towards compiling Affected files ... .. //depot/projects/vimage/src/sys/net/route.c#17 edit .. //depot/projects/vimage/src/sys/net80211/ieee80211.c#12 edit .. //depot/projects/vimage/src/sys/net80211/ieee80211_freebsd.c#8 edit .. //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#10 edit Differences ... ==== //depot/projects/vimage/src/sys/net/route.c#17 (text+ko) ==== @@ -107,9 +107,6 @@ static void rt_maskedcopy(struct sockaddr *, struct sockaddr *, struct sockaddr *); -#ifdef VIMAGE -static int rtable_idetach(const void *); -#endif /* compare two sockaddr structures */ #define sa_equal(a1, a2) (bcmp((a1), (a2), (a1)->sa_len) == 0) @@ -151,7 +148,6 @@ SYSCTL_PROC(_net, OID_AUTO, my_fibnum, CTLTYPE_INT|CTLFLAG_RD, NULL, 0, &sysctl_my_fibnum, "I", "default FIB of caller"); -#ifdef VIMAGE static int rtable_init(const void *unused) { @@ -185,15 +181,15 @@ return 0; } +#ifdef VIMAGE static int -rtable_idetach(const void *unused); +rtable_idetach(const void *unused) { int table; int fam; struct domain *dom; INIT_VNET_NET(curvnet); - struct domain *dom; for (dom = domains; dom; dom = dom->dom_next) { if (dom->dom_rtdetach) { for (table = 0; table < rt_numfibs; table++) { @@ -218,11 +214,8 @@ static void route_init(void) { - int table; - struct domain *dom; - int fam; - /* whack the tunable ints into line. */ + /* whack the tunable ints into line. */ if (rt_numfibs > RT_MAXFIBS) rt_numfibs = RT_MAXFIBS; if (rt_numfibs == 0) @@ -234,28 +227,7 @@ #ifdef VIMAGE vnet_mod_register(&vnet_rtable_modinfo); #else - for (dom = domains; dom; dom = dom->dom_next) { - if (dom->dom_rtattach) { - for (table = 0; table < rt_numfibs; table++) { - if ( (fam = dom->dom_family) == AF_INET || - table == 0) { - /* for now only AF_INET has > 1 table */ - /* XXX MRT - * rtattach will be also called - * from vfs_export.c but the - * offset will be 0 - * (only for AF_INET and AF_INET6 - * which don't need it anyhow) - */ - dom->dom_rtattach( - (void **)&V_rt_tables[table][fam], - dom->dom_rtoffset); - } else { - break; - } - } - } - } + rtable_init(NULL); #endif } ==== //depot/projects/vimage/src/sys/net80211/ieee80211.c#12 (text+ko) ==== @@ -47,6 +47,7 @@ #include #include #include +#include #include #include @@ -208,6 +209,7 @@ void ieee80211_ifattach(struct ieee80211com *ic) { + INIT_VNET_NET(curvnet); struct ifnet *ifp = ic->ic_ifp; struct sockaddr_dl *sdl; struct ifaddr *ifa; @@ -672,16 +674,16 @@ #ifdef VIMAGE void -ieee80211_reassign(struct ieee80211com *ic, struct vnet *vnet, char *dname) +ieee80211_reassign( struct ieee80211vap *vap, struct vnet *vnet, char *dname) { + struct ifnet *ifp = vap->iv_ifp; u_char eaddr[6]; - struct ifnet *ifp = ic->ic_ifp; bcopy(IF_LLADDR(ifp), eaddr, 6); bpfdetach(ifp); ether_ifdetach(ifp); ifp->if_bpf = NULL; - ic->ic_rawbpf = NULL; + vap->iv_rawbpf = NULL; if_reassign_common(ifp, vnet, ifp->if_dname); if (dname) snprintf(ifp->if_xname, IFNAMSIZ, "%s", dname); @@ -689,7 +691,7 @@ CURVNET_SET_QUIET(vnet); ether_ifattach(ifp, eaddr); bpfattach2(ifp, DLT_IEEE802_11, - sizeof(struct ieee80211_frame_addr4), &ic->ic_rawbpf); + sizeof(struct ieee80211_frame_addr4), &vap->iv_rawbpf); CURVNET_RESTORE(); } #endif ==== //depot/projects/vimage/src/sys/net80211/ieee80211_freebsd.c#8 (text+ko) ==== @@ -461,6 +461,7 @@ struct ieee80211vap *vap = ni->ni_vap; struct ifnet *ifp = vap->iv_ifp; + CURVNET_SET_QUIET(ifp->if_vnet); IEEE80211_NOTE(vap, IEEE80211_MSG_NODE, ni, "%snode join", (ni == vap->iv_bss) ? "bss " : ""); ==== //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#10 (text+ko) ==== @@ -536,7 +536,7 @@ int ieee80211_vap_attach(struct ieee80211vap *, ifm_change_cb_t, ifm_stat_cb_t); void ieee80211_vap_detach(struct ieee80211vap *); -void ieee80211_reassign(struct ieee80211com *, struct vnet *, char *); +void ieee80211_reassign(struct ieee80211vap *, struct vnet *, char *); const struct ieee80211_rateset *ieee80211_get_suprates(struct ieee80211com *ic, const struct ieee80211_channel *);