ofonod does not recover if rild re-starts
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ofono (Ubuntu) |
Confirmed
|
High
|
Unassigned |
Bug Description
If the rild daemon is re-started due to a crash, ofonod doesn't recover correctly and thus leaves the system in an inconsistent state where most telephony functions are broken.
This bug is related to the fix for bug #1388030 which was reported for a crash on krillin which involved a socket disconnect. As the fix for the bug worked around the issue by adding a timed delay, we decided to check to see whether a rild restart ( which also causes the socket to disconnect ) would cause similar problems.
This was tested by intentionally killing rild on krillin with a SIGKILL.
To reproduce:
$ phablet-shell
$ sudo su
# kill -9 `pgrep rild`
# cd /usr/share/
# dial-number /ril_0 <number>
The call to dial-number fails although the VoiceCallManager exists, which proves that ofonod does not recover properly.
Note another way to verify is to try and make a phone call from dialer after restarting rild. This will result in a blank screen for 10-15s, followed by a 'Call Failed' screen. Similar result with the messaging app, except the timeout seems longer.
This happens for
$ system-image-cli -i
current build number: 139
device name: krillin
channel: ubuntu-
last update: 2014-10-31 08:58:51
version version: 139
version ubuntu: 20141031
version device: 20141028-3ca60be
version custom: 1414598646
Also verified on mako ( with a slightly older image ):
current build number: 104
device name: mako
channel: ubuntu-
last update: 2014-10-23 15:51:33
version version: 104
version ubuntu: 20141023
version device: 20141017.2
version custom: mako-1.1
summary: |
- ofonod does not recover after rild re-starts + ofonod does not recover if rild re-starts |
description: | updated |
description: | updated |
Changed in ofono (Ubuntu): | |
status: | New → Confirmed |
importance: | Undecided → High |
tags: | added: rtm14 |
description: | updated |