sometimes phone never wakes up or rings on incoming call

Bug #1471338 reported by Bill Filler
40
This bug affects 7 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Fix Released
Critical
Bill Filler
ofono (Ubuntu)
Invalid
High
Alfonso Sanchez-Beato
telephony-service (Ubuntu)
Fix Released
Critical
Gustavo Pichorim Boiko
unity8 (Ubuntu)
Invalid
Undecided
Nick Dedekind

Bug Description

testing on krilin build 56 vivid+overlay latest
dual sims installed

The problem is sometimes during an incoming call the phone never wakes up or rings at all (and no snap decision). From the remote end the call just continues to ring and eventually goes to voicemail. When this occurs the signal strength appears to have at least 3 bars.

It seems ofono is not notifying the upper layers that a call is incoming. This can be verifed by running the following command:
dbus-monitor --system | grep CallAdded

This never gets fired during error condition when the incoming call is ringing from remote end.

Attached is the ofono log when I got it to happen once (not sure where in the log corresponds to the failure)

Related branches

Revision history for this message
Bill Filler (bfiller) wrote :
Changed in telephony-service (Ubuntu):
assignee: nobody → Gustavo Pichorim Boiko (boiko)
Changed in ofono (Ubuntu):
importance: Undecided → High
Changed in telephony-service (Ubuntu):
importance: Undecided → High
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in ofono (Ubuntu):
status: New → Confirmed
Changed in telephony-service (Ubuntu):
status: New → Confirmed
Revision history for this message
Dirk Ritter (dirk-gnumatic) wrote :

I got the bq Aquaris E5 HD (one SIM card in slot 1) and the MEIZU MX4 recently. Both are up to date as of right now with one update to the system software for both smartphones already. Both smartphones may or may not wake up and ring, leaving me with no choice to answer the incoming call.

bq Aquaris E5 HD:
Ubuntu 15.04 (r3) / OS Build 3 / Image 20150611.3 / Ubuntu 15.04-armhf (20150611-173952)

MEIZU MX4:
Ubuntu 15.04 (r2) / OS-Build 2 / Image 20150611.3 / Ubuntu 15.04-armhf (20150611-173952)

When the provider notifies me by SMS about the missed call later on, the phones notified me of the incoming SMS from the provider, but reacting to late SMS provider notifications, or voicemail messages of which I get notified by SMS as well probably was not what you intended as the regular way to "answer" incoming calls. For the time being I guess I will need to resort back to my aging but still mostly functional Nokia N900. Not a good start. Nokias start with Maemo was not perfect either (no MMS - among other issues), but it did at least function as a telephone and continues to do so reliably...

It somehow reminds me of the neo Freerunner which never really worked as a phone due to severe issues with the audio components and software used, but at least that part actually works for both models I received, so there is hope. ;-)

Revision history for this message
Allan LeSage (allanlesage) wrote :

After discussing with boiko, while testing telephony I believe I'm seeing this bug pretty frequently.

Bill Filler (bfiller)
Changed in ofono (Ubuntu):
assignee: nobody → Alfonso Sanchez-Beato (alfonsosanchezbeato)
Changed in canonical-devices-system-image:
milestone: none → ww34-2015
assignee: nobody → John McAleely (john.mcaleely)
importance: Undecided → High
importance: High → Critical
Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :

The log in comment #2 shows that when there are UNSOL_CALL_RING events the call is finally answered with RIL_REQUEST_ANSWER. I do not see anything suspicious there. @bfiller, could you try adding

env OFONO_RIL_TRACE=""

to /etc/init/ofono.override , and try to reproduce again?

Was the phone suspended when this happened?

Revision history for this message
Bill Filler (bfiller) wrote :

I will try what you suggested and see if I can reproduce. Yes the phone was suspended when the error occurred.

Revision history for this message
Dirk Ritter (dirk-gnumatic) wrote :

One call missed today because the phone did not ring, one call received and answered, followed shortly thereafter by five missed calls in a row where the phone definitely did not ring. Frequent retries due to an urgent issue, using the bq Aquaris E5 HD, BTW. So - yes - it happens way too frequently. :-(

If the phone goes to suspend after hitting the power button shortly then I would answer the question for the suspended state with a clear "yes". At least it has become a routine habit to make the phone go to sleep as soon as I'm done with it.

Interesting enough, the phone itself tells me about all the missed calls by means of the notifications feature and the blinking green light that indicates pending messages works as well. That may or may not make the phone wake up, but I still missed all those calls.

The issue is severe, however. That definitely is not a smartphone you could actually use as a phone right now. It is very annoying and even considered rude when you don't answer most of the calls you receive, so I will really need to fall back to the aging Nokia N900 just for the phone part and that also means much less testing. Really bad News - for short. :-(

Changed in canonical-devices-system-image:
status: New → Confirmed
Revision history for this message
bzrudi (bzrudi) wrote :

Same here with my BQ 4.5 (OTA 4). The phone didn't ring (sometimes) but always lists all missed calls, annoying ;)

Changed in canonical-devices-system-image:
status: Confirmed → Fix Released
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

I reproduced this bug on arale:

current build number: 62
device name: arale
channel: ubuntu-touch/rc-proposed/meizu.en
last update: 2015-07-17 07:59:50
version version: 62
version ubuntu: 20150717
version device: 20150709-8965e37
version custom: 20150709-814-6-40

Signal strength is average. The phone doesn't ring, there is no snap decision, but there is a 'missed call' notification in the messaging indicator when the caller terminates the call.

The phone can be suspended or not, it doesn't make a difference and once in this state it is reproducible, the phone will not receive any call.

Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

syslog, content of ~/.cache/upstart/*.log and output of logcat -b radio when this bug occurs.

Revision history for this message
Pat McGowan (pat-mcgowan) wrote :

closed in error

Changed in canonical-devices-system-image:
status: Fix Released → Confirmed
Revision history for this message
Alfonso Sanchez-Beato (alfonsosanchezbeato) wrote :

@jibel, thanks for the log. I have performed some analysis of the radio part, which shows traces for one incoming call. Things seem normal there:

1. rild sends UNSOL_INCOMING_CALL_INDICATION
2. ofono replies with RIL_REQUEST_SET_CALL_INDICATION
3. rild sends UNSOL_CALL_PROGRESS_INFO
4. ofono sends GET_CURRENT_CALLS
5. rild replies with a list of calls that includes an incoming call

At that point ofono knows that there is a call and it should signal it appropriately. As a "missed call" indication is finally shown it looks like that is done. Also, as being suspended or not is irrelevant, powerd does not seem to be involved in this bug.

Finally, dbus.log shows a new call from the same number. If all traces were cleaned up before reproducing, this shows that the bug is not in ofono, but somewhere upper in the stack.

Changed in telephony-service (Ubuntu):
importance: High → Critical
Revision history for this message
kevin gunn (kgunn72) wrote :

@nick - is there anything we can do on the unity8 side to verify the wake up call ?

Changed in unity8 (Ubuntu):
assignee: nobody → Nick Dedekind (nick-dedekind)
Revision history for this message
Pat McGowan (pat-mcgowan) wrote :

Similar bug #1478999 but that is first boot and the phone does wakeup

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

I got the bug due to a not working media-hub that stopped thing, so please ignore the previous logs (comments 16-19).

Tony Espy (awe)
Changed in ofono (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Bill Filler (bfiller) wrote :

I have my phone stuck in this state right now.

On incoming call, the phone wakes up but does not ring or show notification of call. Attaching dbus.log

Revision history for this message
Bill Filler (bfiller) wrote :
Revision history for this message
Bill Filler (bfiller) wrote :

When I attach to telepathy-approver with gdb I see this in the trace:

Thread 6 (Thread 0xb38683a0 (LWP 4339)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0xb2eff3a0 (LWP 4340)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0xb18d33a0 (LWP 4341)):
#0 0xb64a8132 in epoll_wait () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0xb268b28a in ?? () from /usr/lib/arm-linux-gnueabihf/libdbus-cpp.so.4
#2 0xb268d262 in ?? () from /usr/lib/arm-linux-gnueabihf/libdbus-cpp.so.4
#3 0xb268d7c2 in ?? () from /usr/lib/arm-linux-gnueabihf/libdbus-cpp.so.4
#4 0xb2676678 in core::dbus::Bus::run() () from /usr/lib/arm-linux-gnueabihf/libdbus-cpp.so.4
#5 0xb65b32a0 in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
#6 0xb6405490 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#7 0xb64a7c4c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb10563a0 (LWP 4345)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb06d53a0 (LWP 4346)):
#0 0xb640dd44 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0xb640b980 in __lll_lock_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2 0xb6407202 in pthread_mutex_lock () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3 0xb609c024 in ?? () from /lib/arm-linux-gnueabihf/libdbus-1.so.3
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb3dff230 (LWP 4338)):
#0 0xb64a5620 in syscall () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0xb6c4de3a in QBasicMutex::lockInternal() () from /usr/lib/arm-linux-gnueabihf/libQt5Core.so.5
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb)

Changed in canonical-devices-system-image:
assignee: John McAleely (john.mcaleely) → Bill Filler (bfiller)
Revision history for this message
Bill Filler (bfiller) wrote :
Revision history for this message
Bill Filler (bfiller) wrote :
Download full text (15.2 KiB)

Here is full stack trace with all debug symbols installed

(gdb) t a a bt

Thread 6 (Thread 0xb38683a0 (LWP 4339)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0xb2eff3a0 (LWP 4340)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0xb18d33a0 (LWP 4341)):
#0 0xb64a8132 in epoll_wait () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0xb268b28a in boost::asio::detail::epoll_reactor::run (this=0x1a2fdf0, block=block@entry=true,
    ops=...) at /usr/include/boost/asio/detail/impl/epoll_reactor.ipp:392
#2 0xb268d262 in do_run_one (ec=..., this_thread=..., lock=..., this=0x1a2fd20)
    at /usr/include/boost/asio/detail/impl/task_io_service.ipp:368
#3 boost::asio::detail::task_io_service::run (this=0x1a2fd20, ec=...)
    at /usr/include/boost/asio/detail/impl/task_io_service.ipp:153
#4 0xb268d7c2 in run (
    this=0xb269a660 <core::dbus::asio::make_executor(std::shared_ptr<core::dbus::Bus> const&)::io>)
    at /usr/include/boost/asio/impl/io_service.ipp:59
#5 core::dbus::asio::Executor::run (this=<optimized out>)
    at /build/buildd/dbus-cpp-4.3.0+15.04.20150505/src/core/dbus/asio/executor.cpp:386
#6 0xb2676678 in core::dbus::Bus::run (this=<optimized out>)
    at /build/buildd/dbus-cpp-4.3.0+15.04.20150505/src/core/dbus/bus.cpp:343
#7 0xb65b32a0 in ?? () from /usr/lib/arm-linux-gnueabihf/libstdc++.so.6
#8 0xb6405490 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#9 0xb64a7c4c in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb10563a0 (LWP 4345)):
#0 0xb64a14e0 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00000000 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb06d53a0 (LWP 4346)):
#0 0xb640dd44 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0xb640b980 in __lll_lock_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#2 0xb6407202 in pthread_mutex_lock () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3 0xb609c024 in check_for_reply_and_update_dispatch_unlocked (
    connection=connection@entry=0x19c52c0, pending=pending@entry=0xafd02c98)
    at ../../dbus/dbus-connection.c:2353
#4 0xb609c0f6 in _dbus_connection_block_pending_call (pending=pending@entry=0xafd02c98)
    at ../../dbus/dbus-connection.c:2461
#5 0xb60a810e in dbus_pending_call_block (pending=pending@entry=0xafd02c98)
    at ../../dbus/dbus-pending-call.c:741
#6 0xb609c4d4 in dbus_connection_send_with_reply_and_block (connection=0x19c52c0,
    message=0xb0739898, timeout_milliseconds=-1, error=0xb06d471c)
    at ../../dbus/dbus-connection.c:3575
#7 0xb6ba2f3c in q_dbus_connection_send_with_reply_and_block (error=0xb06d471c,
    timeout_milliseconds=-1, message=0xb0739898, connection=0x19c52c0) at qdbus_symbols_p.h:135
#8 QDBusConnectionPriv...

Revision history for this message
Bill Filler (bfiller) wrote :

turns out to be a deadlock in telephony-service, which is fixed in the marked MR

Changed in unity8 (Ubuntu):
status: New → Invalid
Changed in ofono (Ubuntu):
status: Incomplete → Invalid
Bill Filler (bfiller)
Changed in canonical-devices-system-image:
status: Confirmed → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package telephony-service - 0.1+15.10.20150814-0ubuntu1

---------------
telephony-service (0.1+15.10.20150814-0ubuntu1) wily; urgency=medium

  [ Gustavo Pichorim Boiko ]
  * Make GreeterContacts thread safe. (LP: #1471338)

 -- CI Train Bot <email address hidden> Fri, 14 Aug 2015 20:38:56 +0000

Changed in telephony-service (Ubuntu):
status: Confirmed → Fix Released
Bill Filler (bfiller)
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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