[4.1.0.23][4.0.1.48][4.4.0.64][4.5.0.16] No notification sounds (ringing, SMS, alarm)

@pherjung does the above info help to add the bug to the next community meeting?
Things that have changed:

  • reproducer in the works, not yet reproduced (race)
  • watchdog trial does not catch all ‘deadlocks’
    BUT
  • there is information about the state ngfd reaches when it hits the bug:
    • main thread has its stack corrupt, while GStreamer is involved.
    • ASAN build shows that the thing allocatedin n_core_register_sink is overridden by n_core_play_request specifically for the libngf_gst plugin
    • ASAN build crashes → so the bug is effectively gone, because systemd restarts ngfd.

I would even go as far and ship ngfd with these ASAN changes since it 1. fixes the bug by crash + restart 2. has the chance to send rich-core data if crash reports are enabled:) (the only perceived downside is the startup which is slower)

(I’m also pinging @jusa if you are kind to assess the utility of the above stack, or advise how it can be improved).

3 Likes

Some more investigations trying to get a reproducer (without success at the moment yet).

Running ngfd in debug mode (systemctl --user stop ngfd; ngfd -vvvv), I noticed that receiving one or several emails is triggering the “email_exists” feedback several times in a row, asking to play the tone, then stopping it and asking for it to play again… as many times as there are new emails.

So I tried to reproduce this behaviour in harbour-ding by calling “stop” when the “playing” event is received from ngfd and then calling “play” when the “stopping” is received. This is not trigerring the bug though : ( But it is emitting some warnings like the one you mentioned : loop detected in the graph of bin 'pipeline9' from journalctl.

Besides, finding this behaviour strange, I looked at qmf-notifications-plugin which is responsible to emit notifications on email changes. I’m proposing a PR to get the “email_exists” emitted only once, and discuss there the issue and behaviour.

Since I cannot reproduce the bug easily, I’m not sure this PR could be a good workaround for the race in gst_plugin, as you highlighted with the ASAN build.

2 Likes

Thanks for continuing this effort!

I also remember at least for a hang that happened when I was using the phone that it was ”existing chat” the notification.
The email bugs also seem to have happened with a burst of emails (transifex usually:) so it would match the ”email existing” you are noticing. (wow, -vvvv, I only had three…:slight_smile:

It would be about time I post a report of one week on ASAN build: I need to bucket the crash reports, as there is at least one other stacktrace (need to look at the 7ish rich core stacks).

Before I do that (hopefully later today) let me just say that there was at least ONE time where ngfd still deadlocked, even with the ASAN build. Unfortunately I had ngfd-watch killing it… So not gdb for me. I need to disable that watchdog during the day…

1 Like

Thanks for all of the detailed and useful info provided in the thread. I’ve logged this internally and tagged it here as “tracked”.

4 Likes

Problem remain in 4.5.0.16. In my case, it even got worse. Happens all the time now.

1 Like

If it really bothers you can try this package: ngfd-watch. It catches 3 out of 4 locks for me… (source: on github ) - but doesnt solve it…

2 Likes

Thanks, I’ll take a look at it.

have this exact bug. happened at least 3x in 3 days for me, but its brand new for me in 4.5.0.16. never had it before then.
gonna install ngfd-watch after the next time it happens

Just had this hit me the first time with 4.5.0.18 (Struven ketju), so the problem is still alive and kicking. (Reading some older messages, just yesterday I had a long drive with the phone attached to the car bluetooth, which may or may not be a data point)

Happened yesterday witn 4.5.0.19, so it hasn’t been fixed. If possible, it seems to happen more often than earlier, but this may just be random happenstance.

1 Like

This bug was introduced to me this morning for the first time. Xperia 10 III & 4.5.0.19 (Struven ketju)

I couldn’t charge my phone during the night, so I toggled flight mode on before going to bed. The battery charge remained over 50% the whole time.

  • There is a “Missed alarm” notification in the events view
  • Alarms and timers fail to provide any sound notifications
  • Settings → Sounds and feedback → Can’t play any of the notification sounds

Reboot brought all the sounds back in the system.

This is a nasty bug, because now I’m all paranoid about not waking up in time. Today I missed my train, but I could miss something far more important…

1 Like

I can advise a temporary solution, although it has become permanent for me, moving from version to version, which I use myself https://forum.sailfishos.org/t/the-sounds-of-incoming-calls-sms-notifications-disappear/9496/17?u=comsorg

3 Likes

I also have this issue quite often, running 4.4.0.72 on Xperia 10 II.
In my case, almost every time it happens after receiving a Signal call.
Did not have time to debug it, however it looks like the problem is caused by a hang on the vibration part which blocks audio notifications as well. Seems plausible that a thread is locked or queued up with notification sounds or vibrations.

Keyboard does not vibrate on key press anymore and vibration does not work system wide. Apps like Messages crash when trying to open the pulley menu or open a messages thread as you would when you want to reply to someone.

Restarting the phone solves the problem, but a quicker fix is restarting Android App Support.
Sometimes just opening the Messages app or pressing the back button in an Android app unblocks the situation with a short vibrate and then everything works again.

2 Likes

Just had this no ringtone bug and restarted App. Support but it did not help.
Phonr restart did help. (aah keyboard)
I just noticed that you can check if the ringtone still works by adjusting it’s volume when in the events view. If the volume bar says ringtone volume all is ok haha good tip right ;-p
When adjusting the volume in the web browser, the bar will be labeled as volume and if you switch back to the events view or desktop view you will see it changed to ringtone volume.

1 Like

I have had the watcher running for a while now, and it detects a deadlock nicely.

In case it’s related to the audio file in question, every restart it caught was because of keira-black-ringtone.ogg.

4 Likes

Glad it works for you too…:slight_smile: It might not be related to what is played, but to the repeated playing in itself that has more chances of triggering the deadlock. There are cases the deadlock happens without an opened audio file, it is just that we can use this crutch to detect the condition if it is opened for more than 60 seconds…

1 Like

The file itself seems to be just fine, according to oggz validate keira-black-ringtone.ogg (and so are all the other ringtones, too)…

Still occurring for me, any word on when jolla might get a fix in for this? This bug basically requires me to keep an Android phone around.

1 Like

Did you try this one? I’m interested if it happens with this work around or not. The automated solution seems to be at the end of the discussion

comsorg

[31 Mar]

I can advise a temporary solution, although it has become permanent for me, moving from version to version, which I use myself https://forum.sailfishos.org/t/the-sounds-of-incoming-calls-sms-notifications-disappear/9496/17?u=comsorg

Interestingly enough, I haven’t had this issue for quite some time (several weeks now), could some OS update have fixed it? I’m currently running 4.5.0.24