Sim lock screen doesn't appear after restarting the device
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Canonical System Image |
Critical
|
John McAleely | ||
| indicator-network (Ubuntu) |
Undecided
|
Pete Woods | ||
| ofono (Ubuntu) |
Critical
|
Alfonso Sanchez-Beato | ||
| unity8 (Ubuntu) |
Undecided
|
Pete Woods |
Bug Description
From https:/
current build number: 4
device name: turbo
channel: ubuntu-
last update: 2016-04-19 10:38:50
version version: 4
version ubuntu: 20160418
version device: 20160412-d272a77
version custom: 20160324-945-18-69
Steps:
1.turn on sim pin lock
2.reboot the device
3.swipe to dismiss the greeter
Actual result:
phone lock screen is displayed
Expected result:
sim lock screen should appear before the phone lock screen
It also happens sometimes on arale without any pattern to reproduce, just random on reboot.
=============
After debugging it seems that this is caused by ofono removing the modems in the middle of the unlock process. You can see the difference for Turbo and Krillin below.
Log for Turbo: http://
Log for Krillin: http://
Related branches
- Charles Kerr (community): Approve on 2016-05-27
- PS Jenkins bot: Pending (continuous-integration) requested 2016-05-26
- Antti Kaijanmäki: Pending requested 2016-05-26
-
Diff: 935 lines (+213/-70)25 files modifiedsrc/agent/KeyringCredentialStore.cpp (+2/-2)
src/agent/SecretAgent.cpp (+8/-8)
src/agent/agent-main.cpp (+3/-0)
src/indicator/main.cpp (+4/-0)
src/indicator/nmofono/connection/active-connection-manager.cpp (+1/-1)
src/indicator/nmofono/hotspot-manager.cpp (+12/-12)
src/indicator/nmofono/kill-switch.cpp (+3/-3)
src/indicator/nmofono/manager-impl.cpp (+22/-17)
src/indicator/nmofono/vpn/vpn-connection.cpp (+3/-3)
src/indicator/nmofono/vpn/vpn-manager.cpp (+1/-1)
src/indicator/nmofono/wifi/wifi-link-impl.cpp (+9/-4)
src/indicator/nmofono/wwan/modem.cpp (+6/-2)
src/indicator/root-state.cpp (+1/-1)
src/indicator/vpn-status-notifier.cpp (+1/-1)
src/menumodel-cpp/action-group-merger.cpp (+3/-3)
src/menumodel-cpp/menu-item.cpp (+1/-1)
src/notify-cpp/notification.cpp (+4/-4)
src/qpowerd/qpowerd.cpp (+1/-1)
src/util/CMakeLists.txt (+1/-0)
src/util/logging.cpp (+59/-0)
src/util/logging.h (+29/-0)
tests/unit/secret-agent/secret-agent-main.cpp (+29/-1)
tests/unit/secret-agent/test-secret-agent.cpp (+3/-3)
tests/utils/CMakeLists.txt (+3/-2)
tests/utils/main.cpp (+4/-0)
- Jim Hodapp (community): Approve on 2016-07-04
- Konrad Zapałowicz (community): Needs Information (code) on 2016-06-29
-
Diff: 3276 lines (+1954/-264)48 files modifiedMakefile.am (+14/-1)
debian/changelog (+17/-0)
drivers/mtk2modem/gprs.c (+88/-0)
drivers/mtk2modem/mtk2_constants.h (+148/-0)
drivers/mtk2modem/mtk2modem.c (+55/-0)
drivers/mtk2modem/mtk2modem.h (+28/-0)
drivers/mtk2modem/mtk2util.c (+275/-0)
drivers/mtk2modem/mtk2util.h (+39/-0)
drivers/mtk2modem/voicecall.c (+149/-0)
drivers/mtkmodem/mtkunsol.c (+17/-7)
drivers/qcommsimmodem/gprs.c (+118/-0)
drivers/qcommsimmodem/qcom_msim_constants.h (+2/-1)
drivers/qcommsimmodem/qcom_msim_modem.c (+2/-0)
drivers/qcommsimmodem/qcom_msim_modem.h (+3/-0)
drivers/rilmodem/call-barring.c (+1/-0)
drivers/rilmodem/call-forwarding.c (+1/-0)
drivers/rilmodem/call-settings.c (+1/-0)
drivers/rilmodem/call-volume.c (+1/-0)
drivers/rilmodem/devinfo.c (+1/-0)
drivers/rilmodem/gprs.c (+139/-53)
drivers/rilmodem/gprs.h (+2/-0)
drivers/rilmodem/network-registration.c (+2/-0)
drivers/rilmodem/phonebook.c (+1/-0)
drivers/rilmodem/radio-settings.c (+56/-4)
drivers/rilmodem/rilmodem.h (+0/-2)
drivers/rilmodem/sim.c (+3/-1)
drivers/rilmodem/sms.c (+1/-0)
drivers/rilmodem/ussd.c (+6/-2)
drivers/rilmodem/vendor.h (+2/-1)
drivers/rilmodem/voicecall.c (+1/-0)
gril/grilreply.c (+106/-5)
gril/grilreply.h (+12/-0)
gril/grilrequest.c (+34/-13)
gril/grilunsol.c (+11/-1)
gril/grilutil.c (+107/-1)
gril/grilutil.h (+2/-0)
gril/ril_constants.h (+70/-0)
include/modem.h (+0/-5)
plugins/infineon.c (+2/-1)
plugins/mtk.c (+1/-6)
plugins/mtk2.c (+93/-0)
plugins/qcom-msim.c (+16/-1)
plugins/ril.c (+291/-139)
plugins/ril.h (+8/-1)
plugins/rildev.c (+9/-2)
src/gprs.c (+10/-3)
src/modem.c (+0/-8)
src/voicecall.c (+9/-6)
Changed in canonical-devices-system-image: | |
importance: | Undecided → High |
status: | New → Confirmed |
Michael Zanetti (mzanetti) wrote : | #2 |
Yes, indicator-network seems to check only at startup if a SIM pin is required. On all the other devices that's fine, ofono is ready by then. However, on turbo the complete stack boots up so fast, ofono isn't ready inspecting available modems and sim cards by that time.
FWIW, here's the turbo related report: https:/
Pete Woods (pete-woods) wrote : | #3 |
Indicator-network is asked by unity8 when it first shows the greeter to "unlock all SIMs". At this point it goes and looks at ofono to find out which SIMs need unlocking.
Pete Woods (pete-woods) wrote : | #4 |
I can't do any further debugging, as I don't have access to a turbo device.
Pete Woods (pete-woods) wrote : | #5 |
Assuming mzanetti is correct, and that what's happening is that the indicator is asking ofono about the SIMs before it is ready, then we need a way of getting the indicator to delay the unlocking until ofono actually *is* ready. I'm not sure what signals we should be waiting on there, though..
@pete-woods, you need to wait for org.ofono.
Launchpad Janitor (janitor) wrote : | #7 |
Status changed to 'Confirmed' because the bug affects multiple users.
Changed in indicator-network (Ubuntu): | |
status: | New → Confirmed |
Changed in ofono (Ubuntu): | |
status: | New → Confirmed |
Changed in unity8 (Ubuntu): | |
status: | New → Confirmed |
Timo Jyrinki (timo-jyrinki) wrote : | #10 |
Got my Meizu Pro 5 today, upgraded to rc-proposed and this started happening. I need to unlock SIM manually now from indicator menu.
On OTA-10.2 I got the SIM unlock dialog on boot still, several times.
Pete Woods (pete-woods) wrote : | #11 |
Did some debugging on this today, it's caused by ofono removing all the modems after we queue them up for unlocking. Then it adds them back again a short time later. This basically clears them from our unlock queue, as they are different modems as far as indicator-network knows.
See output: http://
Pete Woods (pete-woods) wrote : | #12 |
Further debugging reveals this happens at each startup of indicator-network. Maybe the bug is in QOfono...
Pete Woods (pete-woods) wrote : | #13 |
No, that's not true. Misread the logs.
Pete Woods (pete-woods) wrote : | #14 |
Debug: Adding modems QSet("/ril_1", "/ril_0") (/home/
acquired
Debug: virtual void nmofono:
Debug: Waiting for modem to be ready "SIM 1" (/home/
Debug: (/home/
Debug: Waiting for modem to be ready "SIM 2" (/home/
Debug: (/home/
Debug: Removing modems QSet("/ril_1", "/ril_0") (/home/
Debug: Adding modems QSet("/ril_0") (/home/
Debug: Adding modems QSet("/ril_1") (/home/
description: | updated |
Pete Woods (pete-woods) wrote : | #16 |
I'm adding a branch that improves logging in the indicator, although obviously it doesn't fix the issue that exists in Ofono.
Changed in indicator-network (Ubuntu): | |
status: | Confirmed → Invalid |
Changed in unity8 (Ubuntu): | |
status: | Confirmed → Invalid |
Changed in indicator-network (Ubuntu): | |
assignee: | nobody → Pete Woods (pete-woods) |
Changed in unity8 (Ubuntu): | |
assignee: | nobody → Pete Woods (pete-woods) |
Changed in canonical-devices-system-image: | |
assignee: | nobody → John McAleely (john.mcaleely) |
Changed in ofono (Ubuntu): | |
assignee: | nobody → Alfonso Sanchez-Beato (alfonsosanchezbeato) |
Pat McGowan (pat-mcgowan) wrote : | #17 |
Proposed for a hot fix
Changed in canonical-devices-system-image: | |
milestone: | none → 12 |
importance: | High → Critical |
Changed in ofono (Ubuntu): | |
importance: | Undecided → Critical |
Marco Graziotti (graziottimarco) wrote : | #18 |
Same problem for me on Meizu MX4 starting from OTA-11 update.
tags: | added: hotfix |
Changed in canonical-devices-system-image: | |
status: | Confirmed → Fix Committed |
status: | Fix Committed → Confirmed |
Launchpad Janitor (janitor) wrote : | #19 |
This bug was fixed in the package indicator-network - 0.8.0+16.
---------------
indicator-network (0.8.0+
[ Pete ]
* Add SIM management API.
[ Antti Kaijanmäki ]
* New Connectivity Service Private API for managing mobile data and
SIM cards. (LP: #1373463)
[ Pete Woods ]
* Improve logging (LP: #1580908)
* add mobile data switch (LP: #1373463)
[ Antti Kaijanmäki, Pete Woods ]
* New Connectivity Service Private API for managing mobile data and
SIM cards. Tests. (LP: #1373463)
-- Antti Kaijanmäki <email address hidden> Wed, 22 Jun 2016 09:49:15 +0000
Changed in indicator-network (Ubuntu): | |
status: | Invalid → Fix Released |
Changed in ofono (Ubuntu): | |
status: | Confirmed → In Progress |
Changed in canonical-devices-system-image: | |
milestone: | 12 → fi |
Changed in canonical-devices-system-image: | |
status: | Confirmed → In Progress |
Julia Palandri (julia-palandri) wrote : | #20 |
The last few times I've booted my turbo i had to enter the sim pin, so it might be working now? or maybe just good luck?
@julia-palandri, this is all about timing, so probably it is just good luck. However, silo 29 has a new ofono that should fix this, you can give it a try if you want. Ticket is https:/
Changed in indicator-network (Ubuntu): | |
status: | Fix Released → Invalid |
Changed in canonical-devices-system-image: | |
milestone: | fi → 13 |
status: | In Progress → Fix Committed |
Changed in ofono (Ubuntu): | |
status: | In Progress → Fix Released |
alain (al1guillet) wrote : | #22 |
After OTA 13, the problem still exists on my phone. It worked only once: the first time after the update.
Changed in canonical-devices-system-image: | |
status: | Fix Committed → Fix Released |
I have tried on a turbo device and behaviour of ofono seems normal (list-modems shows right values and I can enter PIN). It looks like some race condition on boot.