diff options
author | adrian <adrian@FreeBSD.org> | 2016-06-04 07:18:39 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2016-06-04 07:18:39 +0000 |
commit | 5b5250ad6263752fe2ad5c124840e0cda423fc6f (patch) | |
tree | ec3878e9cfe062a906135feb1c0689b4786c011a /sys/dev/usb/wlan/if_run.c | |
parent | ef75f3885b65f844ecc4210be8f5caac01b82326 (diff) | |
download | FreeBSD-src-5b5250ad6263752fe2ad5c124840e0cda423fc6f.zip FreeBSD-src-5b5250ad6263752fe2ad5c124840e0cda423fc6f.tar.gz |
[run] fix TSF locking in RX radiotap.
Submitted by: Imre Vadasz <imre@vdsz.com>
Diffstat (limited to 'sys/dev/usb/wlan/if_run.c')
-rw-r--r-- | sys/dev/usb/wlan/if_run.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/usb/wlan/if_run.c b/sys/dev/usb/wlan/if_run.c index ac623e5..58e8544 100644 --- a/sys/dev/usb/wlan/if_run.c +++ b/sys/dev/usb/wlan/if_run.c @@ -2829,7 +2829,9 @@ run_rx_frame(struct run_softc *sc, struct mbuf *m, uint32_t dmalen) tap->wr_antenna = ant; tap->wr_dbm_antsignal = run_rssi2dbm(sc, rssi, ant); tap->wr_rate = 2; /* in case it can't be found below */ + RUN_LOCK(sc); run_get_tsf(sc, &tap->wr_tsf); + RUN_UNLOCK(sc); phy = le16toh(rxwi->phy); switch (phy & RT2860_PHY_MODE) { case RT2860_PHY_CCK: |