Wrong roaming status for a few milliseconds

Bug #1377148 reported by Alfonso Sanchez-Beato
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ofono (Ubuntu)
Incomplete
Medium
Alfonso Sanchez-Beato

Bug Description

For some operators, Status is wrongly reported as "roaming" for a few milliseconds before changing to "registered". Although this should be handled fine by the system, it can lead to status shown as "roaming" for a small amount of time in the GUI, due to the signals emitted by ofono. In the logs reported in LP bug #1371032 it can be seen that this happens:

2014-09-26 20:11:18,643 {NetworkRegistration} [/ril_0] Status = roaming
2014-09-26 20:11:19,323 {NetworkRegistration} [/ril_0] Status = registered
...
2014-09-26 20:16:31,743 {NetworkRegistration} [/ril_0] Status = roaming
2014-09-26 20:16:31,803 {NetworkRegistration} [/ril_0] Status = registered
...
2014-09-26 22:03:43,743 {NetworkRegistration} [/ril_0] Status = roaming
2014-09-26 22:03:43,779 {NetworkRegistration} [/ril_0] Status = registered
...
2014-09-26 22:10:58,077 {NetworkRegistration} [/ril_0] Status = roaming
2014-09-26 22:10:58,104 {NetworkRegistration} [/ril_0] Status = registered
...

The reason for this is that the modem reports the status as roaming, but it is being corrected by ofono after checking the content of SIM files. Unfortunately, a signal reporting the roaming status is broadcasted before that happens.

Tony Espy (awe)
Changed in ofono (Ubuntu):
status: New → Incomplete
Tony Espy (awe)
Changed in ofono (Ubuntu):
assignee: nobody → Alfonso Sanchez-Beato (alfonsosanchezbeato)
Revision history for this message
Tony Espy (awe) wrote :

@Alfonso

Let's confine this to a single operator until we can prove it's generic.

In this case Yoigo ( MCC=214 MNC=04 ) as a roaming agreement with movistar ( MCC=214 MNC=07 ) where the latter provides UMTS coverage.

You're trace leaves out the other NetworkRegistration property changes such as 'Name', 'Technology', and 'MNC' changes which provide a bit more context to understanding what's going on.

In the first instance, the modem goes from movistar/umts/mnc=07 to Yoigo/hspa/mnc=04 in about 7/10 of a second. In the other instances it's happening quicker, sometimes so quick that the Name and/or MNC changes aren't necessarily signaled to DBus.

One question for you is that if you're proven that ofono is correcting the roaming status based on the SIM files, why are we *ever* seeing "Status = roaming" in this case?

Have you managed to probe the contents of the SIM files involved and found them to be correct?

Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :

I have not seen the SIM files from LP bug #1371032, but I can reproduce the same situation (roaming status for a few hundred of milliseconds) with one MVNO card I have.

Some debugging showed that the problem is that we receive the registration status (=roaming from ril) before we know the current operator. So we cannot check whether the MCC/MNC of the operator matches those in the SIM files. A small amount of time later we get the operator information, and when we check the MCC/MNC we change the status from the "roaming" returned by ril to "registered".

Logs attached.

Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :
Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :
Tony Espy (awe)
Changed in ofono (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Tony Espy (awe) wrote :

This was discussed earlier today in a QA meeting, and it was pointed out that this really isn't a major issue as the latency is measured milliseconds.

Also as Alfonso has pointed out, as ofono's NetworkRegistration design is based upon individual property changes to the core, it's possible for our rilmodem driver to notify the core that the device is roaming, but not yet have the new MNC ( Mobile Network Code ) that would allow ofono to check the roaming files to see if the network should be treated as a home network.

That said, perhaps we should examine our network registration driver code and see whether or not it's possible to queue a roaming state change until an associated MNC has been received.

For now, we'll leave the triaged as 'Medium', and follow up post-RTM.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.