Bug in 'LteUeRrc::RadioLinkFailureDetected ()'
When a UE detects 'out-of-sync' state, the following code schedule a T310 timer:
m_radioLinkFailureDetected = Simulator::Schedule (m_t310, &LteUeRrc::RadioLinkFailureDetected, this);
But maybe some other actions, like successful Handover procedure leads the link to change from 'out-of-sync' state to 'in-sync' state, and cancel the m_radioLinkFailureDetected
, where the T310 timer disables too.
Since we don't delete the scheduled LteUeRrc::RadioLinkFailureDetected
event, while executing the scheduled link failure method the situation should always recheck to see whether the link failure exists or not.
If we don't do it in simulating Handover examples if a UE schedule LteUeRrc::RadioLinkFailureDetected
after successful Handover procedure the expiration of T310 will switch UE state from 'CONNECTED_NORMALLY' to 'CONNECTED_PHY_PROBLEM'.