svn commit: r209156 - head/sys/dev/ath
Bernhard Schmidt
bschmidt at FreeBSD.org
Mon Jun 14 08:24:00 UTC 2010
Author: bschmidt
Date: Mon Jun 14 08:24:00 2010
New Revision: 209156
URL: http://svn.freebsd.org/changeset/base/209156
Log:
sc_lastrs is also used in case the sending station is not known, for
example in a split IBSS scenario. Therefore always assign sc_lastrs.
This removes a hack I committed in r206457.
Approved by: rpaulo (mentor)
Modified:
head/sys/dev/ath/if_ath.c
Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c Mon Jun 14 07:38:53 2010 (r209155)
+++ head/sys/dev/ath/if_ath.c Mon Jun 14 08:24:00 2010 (r209156)
@@ -3654,14 +3654,8 @@ ath_recv_mgmt(struct ieee80211_node *ni,
case IEEE80211_FC0_SUBTYPE_PROBE_RESP:
if (vap->iv_opmode == IEEE80211_M_IBSS &&
vap->iv_state == IEEE80211_S_RUN) {
- uint32_t rstamp;
- uint64_t tsf;
-
- if (sc->sc_lastrs == NULL)
- break;
-
- rstamp = sc->sc_lastrs->rs_tstamp;
- tsf = ath_extend_tsf(rstamp,
+ uint32_t rstamp = sc->sc_lastrs->rs_tstamp;
+ uint64_t tsf = ath_extend_tsf(rstamp,
ath_hal_gettsf64(sc->sc_ah));
/*
* Handle ibss merge as needed; check the tsf on the
@@ -4002,11 +3996,11 @@ rx_accept:
mtod(m, const struct ieee80211_frame_min *),
rs->rs_keyix == HAL_RXKEYIX_INVALID ?
IEEE80211_KEYIX_NONE : rs->rs_keyix);
+ sc->sc_lastrs = rs;
if (ni != NULL) {
/*
* Sending station is known, dispatch directly.
*/
- sc->sc_lastrs = rs;
type = ieee80211_input(ni, m, rs->rs_rssi, nf);
ieee80211_free_node(ni);
/*
More information about the svn-src-all
mailing list