Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 25254db3 authored by Yong Zhang's avatar Yong Zhang Committed by Wink Saville
Browse files

Delay radio reset to wait for data cleanup in CdmaDataConnectionTracker

Issue to be addressed:
In radioRestart() method in CdmaDataConnectionTracker, if the radio is
restarted right after cleaning up connection, it is possible that the
connection setup request triggered by radio-on may happen before the
connection cleanup has been completed so that the connection may not
be set up correctly after the radio is restarted. The end result could
be that the phone lost the data capability.

The patch includes the following changes:
1) Add EVENT_RESTART_RADIO in DataConnectionTracker.
2) In CdmaDataConnectionTracker, method restartRadio(), send a message
   delayed by 20s, the purpose of which is to wait for connection cleanup
   to be completed, then to restart radio.
3) In CdmaDataConnectionTracker, method trySetupData(), don't try to setup
   data if there is pending message to restart radio.

Addtional notes:
   A system property is not used to config the delayed timer because we
   think this fix is to address the unusual error case and waiting for
   long time should not impact user experience much. 12s is the longest
   time to complete the data cleanup as we have seen so far, so we are
   using a 20s timer.
parent 41ceb907
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment