From owner-p4-projects@FreeBSD.ORG Tue Aug 5 16:19:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 78EB937B404; Tue, 5 Aug 2003 16:19:30 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 16A1437B418 for ; Tue, 5 Aug 2003 16:19:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 96CEA43F3F for ; Tue, 5 Aug 2003 16:19:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h75NJS0U073851 for ; Tue, 5 Aug 2003 16:19:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h75NJS1A073848 for perforce@freebsd.org; Tue, 5 Aug 2003 16:19:28 -0700 (PDT) Date: Tue, 5 Aug 2003 16:19:28 -0700 (PDT) Message-Id: <200308052319.h75NJS1A073848@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 35572 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Aug 2003 23:19:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=35572 Change 35572 by sam@sam_ebb on 2003/08/05 16:18:27 delay creating ic_bss until after the super-class has a chance to override the method points for manipulating nodes; this fixes a problem where the ic_bss node was not being created properly for ath driver causing the driver to scribble on random memory Affected files ... .. //depot/projects/netperf/sys/net80211/ieee80211.c#2 edit .. //depot/projects/netperf/sys/net80211/ieee80211_node.c#2 edit .. //depot/projects/netperf/sys/net80211/ieee80211_node.h#2 edit Differences ... ==== //depot/projects/netperf/sys/net80211/ieee80211.c#2 (text+ko) ==== @@ -337,6 +337,7 @@ if (maxrate) ifp->if_baudrate = IF_Mbps(maxrate); + ieee80211_node_lateattach(ifp); /* XXX */ #undef ADD } ==== //depot/projects/netperf/sys/net80211/ieee80211_node.c#2 (text+ko) ==== @@ -86,6 +86,13 @@ ic->ic_node_alloc = ieee80211_node_alloc; ic->ic_node_free = ieee80211_node_free; ic->ic_node_copy = ieee80211_node_copy; +} + +void +ieee80211_node_lateattach(struct ifnet *ifp) +{ + struct ieee80211com *ic = (void *)ifp; + ic->ic_bss = (*ic->ic_node_alloc)(ic); KASSERT(ic->ic_bss != NULL, ("unable to setup inital BSS node")); ic->ic_bss->ni_chan = IEEE80211_CHAN_ANYC; ==== //depot/projects/netperf/sys/net80211/ieee80211_node.h#2 (text+ko) ==== @@ -121,6 +121,7 @@ struct ieee80211com; extern void ieee80211_node_attach(struct ifnet *); +extern void ieee80211_node_lateattach(struct ifnet *); extern void ieee80211_node_detach(struct ifnet *); extern void ieee80211_begin_scan(struct ifnet *);