summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2005-08-12 23:11:44 +0000
committersam <sam@FreeBSD.org>2005-08-12 23:11:44 +0000
commitc7715b87d693fed356911fad6776d2dd62f33134 (patch)
tree42db363b0a44f0932cec80ae58497a3ade3e4581 /sys
parent44f0d8ab4f492fdac0b70f3b6978b958a9ca75d7 (diff)
downloadFreeBSD-src-c7715b87d693fed356911fad6776d2dd62f33134.zip
FreeBSD-src-c7715b87d693fed356911fad6776d2dd62f33134.tar.gz
correct CTS duration calculation; SIFS+ACK should use the xmit rate not
the rate for CTS MFC after: 3 days Obtained from: Atheros
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/ath/if_ath.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index 05cad26..b96413f 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -3425,14 +3425,14 @@ ath_tx_start(struct ath_softc *sc, struct ieee80211_node *ni, struct ath_buf *bf
ctsduration += ath_hal_computetxtime(ah,
rt, pktlen, rix, AH_TRUE);
if ((flags & HAL_TXDESC_NOACK) == 0) /* SIFS + ACK */
- ctsduration += rt->info[cix].spAckDuration;
+ ctsduration += rt->info[rix].spAckDuration;
} else {
if (flags & HAL_TXDESC_RTSENA) /* SIFS + CTS */
ctsduration += rt->info[cix].lpAckDuration;
ctsduration += ath_hal_computetxtime(ah,
rt, pktlen, rix, AH_FALSE);
if ((flags & HAL_TXDESC_NOACK) == 0) /* SIFS + ACK */
- ctsduration += rt->info[cix].lpAckDuration;
+ ctsduration += rt->info[rix].lpAckDuration;
}
/*
* Must disable multi-rate retry when using RTS/CTS.
OpenPOWER on IntegriCloud