Date: Fri, 15 Feb 2008 05:46:16 GMT From: Sepherosa Ziehau <sephe@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 135425 for review Message-ID: <200802150546.m1F5kGTc005452@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=135425 Change 135425 by sephe@sephe_zealot:sam_wifi on 2008/02/15 05:45:20 Revert previous two changes. Affected files ... .. //depot/projects/wifi/sys/dev/bwi/if_bwi.c#17 edit .. //depot/projects/wifi/sys/dev/bwi/if_bwi_pci.c#6 edit Differences ... ==== //depot/projects/wifi/sys/dev/bwi/if_bwi.c#17 (text+ko) ==== @@ -32,6 +32,7 @@ * SUCH DAMAGE. * * $DragonFly: src/sys/dev/netif/bwi/if_bwi.c,v 1.18 2008/01/15 09:01:13 sephe Exp $ + * 1.8 is not merged */ #include <sys/cdefs.h> @@ -117,7 +118,7 @@ static void bwi_stop(struct bwi_softc *); static int bwi_newbuf(struct bwi_softc *, int, int); static int bwi_encap(struct bwi_softc *, int, struct mbuf *, - struct ieee80211_node **); + struct ieee80211_node *); static void bwi_init_rxdesc_ring32(struct bwi_softc *, uint32_t, bus_addr_t, int, int); @@ -1382,7 +1383,7 @@ } wh = NULL; /* Catch any invalid use */ - if (bwi_encap(sc, idx, m, &ni) != 0) { + if (bwi_encap(sc, idx, m, ni) != 0) { /* 'm' is freed in bwi_encap() if we reach here */ if (ni != NULL) ieee80211_free_node(ni); @@ -2921,10 +2922,9 @@ static int bwi_encap(struct bwi_softc *sc, int idx, struct mbuf *m, - struct ieee80211_node **ni0) + struct ieee80211_node *ni) { struct ieee80211com *ic = &sc->sc_ic; - struct ieee80211_node *ni = *ni0; struct bwi_ring_data *rd = &sc->sc_tx_rdata[BWI_TX_DATA_RING]; struct bwi_txbuf_data *tbd = &sc->sc_tx_bdata[BWI_TX_DATA_RING]; struct bwi_txbuf *tb = &tbd->tbd_buf[idx]; @@ -2935,7 +2935,7 @@ uint32_t mac_ctrl; uint16_t phy_ctrl; bus_addr_t paddr; - int pkt_len, error, mcast_pkt = 0; + int pkt_len, error; #if 0 const uint8_t *p; int i; @@ -2954,10 +2954,9 @@ * Find TX rate */ bzero(tb->tb_rate_idx, sizeof(tb->tb_rate_idx)); - if (IEEE80211_IS_MULTICAST(wh->i_addr1)) { + if (IEEE80211_IS_MULTICAST(wh->i_addr1)) rate = rate_fb = ic->ic_mcast_rate; - mcast_pkt = 1; - } else if (ic->ic_fixed_rate == IEEE80211_FIXED_RATE_NONE) { + else if (ic->ic_fixed_rate == IEEE80211_FIXED_RATE_NONE) { rate = ni->ni_rates.rs_rates[ni->ni_txrate] & IEEE80211_RATE_VAL; rate_fb = (ni->ni_txrate > 0) ? @@ -3000,7 +2999,7 @@ bcopy(wh->i_fc, hdr->txh_fc, sizeof(hdr->txh_fc)); bcopy(wh->i_addr1, hdr->txh_addr1, sizeof(hdr->txh_addr1)); - if (!mcast_pkt) { + if (!IEEE80211_IS_MULTICAST(wh->i_addr1)) { uint16_t dur; uint8_t ack_rate; @@ -3071,11 +3070,6 @@ bus_dmamap_sync(sc->sc_buf_dtag, tb->tb_dmap, BUS_DMASYNC_PREWRITE); - if (mcast_pkt) { - /* Don't involve mcast packets into TX rate control */ - ieee80211_free_node(ni); - *ni0 = ni = NULL; - } tb->tb_mbuf = m; tb->tb_ni = ni; ==== //depot/projects/wifi/sys/dev/bwi/if_bwi_pci.c#6 (text+ko) ==== @@ -250,5 +250,4 @@ MODULE_VERSION(if_bwi, 1); MODULE_DEPEND(if_bwi, wlan, 1, 1, 1); /* 802.11 media layer */ MODULE_DEPEND(if_bwi, firmware, 1, 1, 1); /* firmware support */ -MODULE_DEPEND(if_bwi, bwi_v3_fw, 1, 1, 1); /* v3 firmwares */ MODULE_DEPEND(if_bwi, wlan_amrr, 1, 1, 1);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200802150546.m1F5kGTc005452>