From a47cda1c1a2f666705d0db7e014cac5cfa8730d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Deronne?= Date: Wed, 28 Dec 2016 13:49:41 +0100 Subject: [PATCH] wifi: (fixes #2591) Allow 802.11e Block Ack mechanism on HT/VHT stations --- RELEASE_NOTES | 1 + src/wifi/model/edca-txop-n.cc | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 073e5a829..03ed8ec7c 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -53,6 +53,7 @@ Bugs fixed - Bug 2563 - Modify pybindgen version check to >= minimum version required - Bug 2564 - Simulation crashes when CtsTimeout is triggered for A-MPDU transmissions - Bug 2566 - BlockAckManager::GetNRetryNeededPackets missing some packets in the queue +- Bug 2591 - 802.11e Block Ack mechanism cannot be enabled on HT/VHT stations - Bug 2594 - vht-wifi-network provides very low throughtput at MCS 6, 160 MHz, SGI Known issues diff --git a/src/wifi/model/edca-txop-n.cc b/src/wifi/model/edca-txop-n.cc index c8120fc9b..69ff8f811 100644 --- a/src/wifi/model/edca-txop-n.cc +++ b/src/wifi/model/edca-txop-n.cc @@ -1520,7 +1520,8 @@ EdcaTxopN::VerifyBlockAck (void) { m_baManager->SwitchToBlockAckIfNeeded (recipient, tid, sequence); } - if ((m_baManager->ExistsAgreementInState (recipient, tid, OriginatorBlockAckAgreement::ESTABLISHED)) && (GetMpduAggregator () == 0)) + if ((m_baManager->ExistsAgreementInState (recipient, tid, OriginatorBlockAckAgreement::ESTABLISHED)) + && (GetMpduAggregator () == 0 || GetMpduAggregator ()->GetMaxAmpduSize () == 0)) { m_currentHdr.SetQosAckPolicy (WifiMacHeader::BLOCK_ACK); }