wifi: CAM ResetState() should not cancel access timeout

Otherwise, access timeout is cancelled when a CTS timeout
occurs after that an aux PHY has sent the RTS and while the
main PHY is switching to the aux PHY's link.
This commit is contained in:
Stefano Avallone
2024-03-07 22:48:38 +01:00
parent 3e70cc182b
commit e2bf5b3a9c

View File

@@ -958,6 +958,12 @@ ChannelAccessManager::NotifySwitchingStartNow(PhyListener* phyListener, Time dur
ResetState();
// Cancel timeout
if (m_accessTimeout.IsPending())
{
m_accessTimeout.Cancel();
}
// Reset backoffs
for (const auto& txop : m_txops)
{
@@ -985,12 +991,6 @@ ChannelAccessManager::ResetState()
m_lastCtsTimeoutEnd = std::min(m_lastCtsTimeoutEnd, now);
InitLastBusyStructs();
// Cancel timeout
if (m_accessTimeout.IsPending())
{
m_accessTimeout.Cancel();
}
}
void