Bug#1021043: linphone-desktop: linphone crashes and is unusable

Daniel Kahn Gillmor dkg at fifthhorseman.net
Sat Oct 1 20:15:10 BST 2022


Hi Dennis--

Thank you very much for the prompt response!

On Sat 2022-10-01 09:15:39 +0200, Dennis Filder wrote:
> It would help a lot to know the exact time when those crashes started.
> Can you try narrowing it down, e.g. by looking at the ctime of
> files/directories you created in reaction to the crashes?

unfortunately, i saw crashes several days ago when i was in the middle
of dealing with other problems and i didn't get around to doing actual
debugging until much yesterday.

Looking in my backups of ~/.local/share/linphone, it looks like
september 21 was the most recent time that linphone.db and
zrtp-secrets.db were changed.

according to my dpkg logs, i had:

2022-09-27 17:03:49 upgrade libsoci-core4.0:amd64 4.0.1-5 4.0.3-1

so maybe libsoci is the issue?

> I also saw one segfault that was not handled by __GI_abort() -- maybe
> you had one, too, so it might show up as a message in
> /var/log/message* somewhere.

i'm using journald, so /var/log/message hasn't been touched in years on
my system, but i don't see anything suspicious in the output of
"journalctl -k --since '15 days ago'" either.

> Also, do you have the impression that
> the crashes suddenly became more frequent somehow?  If so: When?  What
> is the output of?:
>
>     stat /usr/share/doc/linphone-desktop/changelog.Debian.gz


0 dkg at alice:~$ stat /usr/share/doc/linphone-desktop/changelog.Debian.gz 
  File: /usr/share/doc/linphone-desktop/changelog.Debian.gz
  Size: 938       	Blocks: 8          IO Block: 4096   regular file
Device: fe01h/65025d	Inode: 523131      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-19 11:30:17.000000000 -0400
Modify: 2022-09-12 14:41:04.000000000 -0400
Change: 2022-09-19 11:32:11.285343797 -0400
 Birth: 2022-09-19 11:32:11.273343755 -0400
0 dkg at alice:~$ 

> My current suspicion is that soci 4.0.3-1 had an ABI break from
> upstream commit 1b1b5621f5abc40bd76a54a779455e8b9c0892ff (adding the
> private backendRef_ member changed the layouts of the classes
> soci::connection_parameters and soci::session and liblinphone.so.10
> instantiates the latter).

Yes, good call!  I've installed libsoci-core4.0 and libsoci-sqlite3-4.0
from bullseye, and i was able to start up linphone without an immediate
crash.

However, after restoring my configuration, and trying to place a single
call (to myself, which of course i didn't expect to work) the app
crashed again.

now, even with libsoci* from bullseye, it is crashing again at startup,
with this stderr log and backtrace:

[15:11:03:325][0x555555d195f0][Info]"Registering shared types..."
[15:11:03:325][0x555555d195f0][Info]"Registering tool types..."
[15:11:03:325][0x555555d195f0][Info]"Registering shared tool types..."
[15:11:03:546][0x555555d195f0][Info]"Loading main view..."
[New Thread 0x7fffb79ff640 (LWP 310193)]
[Thread 0x7fffb79ff640 (LWP 310193) exited]
[15:11:03:673][0x555555d195f0][Info]"Launch async core creation."
[New Thread 0x7fffb79ff640 (LWP 310194)]
[New Thread 0x7fffb71fe640 (LWP 310195)]
[Thread 0x7fffb71fe640 (LWP 310195) exited]
[New Thread 0x7fffb71fe640 (LWP 310196)]
[Thread 0x7fffb71fe640 (LWP 310196) exited]
[15:11:04:375][0x555555d195f0][Info]Core is starting  "Starting up"
[15:11:04:424][0x555555d195f0][Info]Core is running  "On"
[15:11:04:424][0x555555d195f0][Info]"Set `Friends` path: `/home/dkg/.local/share/linphone/friends.db`"
[15:11:04:436][0x555555d195f0][Info]"Set `CallLogs` path: `/home/dkg/.local/share/linphone/call-history.db`"
[15:11:04:441][0x555555d195f0][Info]Using ZrtpSecrets path :  "/home/dkg/.local/share/linphone/zidcache"
[15:11:04:442][0x555555d195f0][Info]Using UserCertificate path :  "/home/dkg/.local/share/linphone/usr-crt/"
[15:11:04:442][0x555555d195f0][Info]Using RootCa path :  "/usr/share/linphone/rootca.pem"
[15:11:04:442][0x555555d195f0][Info]"Start iterate"
[15:11:04:473][0x555555d195f0][Info]Sip addresses model from Chats : 30 ms.
[15:11:04:484][0x555555d195f0][Info]Sip addresses model from Calls : 10 ms.
[15:11:04:484][0x555555d195f0][Info]Sip addresses model from Refs : 0 ms.
[15:11:04:484][0x555555d195f0][Info]Sip addresses model from Contacts : 0 ms.
[15:11:04:484][0x555555d195f0][Info]Sip addresses model initialized in: 41 ms.
[15:11:04:528][0x555555d195f0][Info]"Notify event count: 0."
[15:11:04:528][0x555555d195f0][Info]"CoreManager initialized"
[New Thread 0x7fffb71fe640 (LWP 310197)]
[New Thread 0x7fffb69fd640 (LWP 310198)]
[Thread 0x7fffb69fd640 (LWP 310198) exited]
[15:11:04:738][0x555555d195f0][Info]"Open Linphone app."
[15:11:04:738][0x555555d195f0][Info]"Creating subwindow: `qrc:/ui/views/App/Calls/CallsWindow.qml`."
[15:11:04:813][0x555555d195f0][Info]"Subwindow status: `1`."
[15:11:04:852][0x555555d195f0][Info]"Creating subwindow: `qrc:/ui/views/App/Settings/SettingsWindow.qml`."
[15:11:04:921][0x555555d195f0][Info]"Subwindow status: `1`."
[New Thread 0x7fffb69fd640 (LWP 310199)]
[New Thread 0x7fffb5dfc640 (LWP 310200)]
[15:11:05:743][0x555555d195f0][Info]"Notify event count: 0."
terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string: construction from null is not valid

Thread 1 "linphone" received signal SIGABRT, Aborted.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo at entry=6, no_tid=no_tid at entry=0) at ./nptl/pthread_kill.c:44
44	./nptl/pthread_kill.c: No such file or directory.
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo at entry=6, no_tid=no_tid at entry=0) at ./nptl/pthread_kill.c:44
#1  0x00007ffff48895df in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  0x00007ffff483da02 in __GI_raise (sig=sig at entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007ffff4828469 in __GI_abort () at ./stdlib/abort.c:79
#4  0x00007ffff4c9d909 in  () at /lib/x86_64-linux-gnu/libstdc++.so.6
#5  0x00007ffff4ca8d8a in  () at /lib/x86_64-linux-gnu/libstdc++.so.6
#6  0x00007ffff4ca8df5 in  () at /lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007ffff4ca9048 in  () at /lib/x86_64-linux-gnu/libstdc++.so.6
#8  0x00007ffff4ca00d4 in std::__throw_logic_error(char const*) () at /lib/x86_64-linux-gnu/libstdc++.so.6
#9  0x00007ffff7868d34 in LinphonePrivate::Account::notifyPublishStateChanged(_LinphonePublishState) () at /lib/x86_64-linux-gnu/liblinphone.so.10
#10 0x00007ffff7b71c15 in linphone_core_notify_publish_state_changed () at /lib/x86_64-linux-gnu/liblinphone.so.10
#11 0x00007ffff7b2edfb in linphone_event_set_publish_state () at /lib/x86_64-linux-gnu/liblinphone.so.10
#12 0x00007ffff79e18ba in LinphonePrivate::SalPublishOp::publishRefresherListenerCb(belle_sip_refresher*, void*, unsigned int, char const*, int) () at /lib/x86_64-linux-gnu/liblinphone.so.10
#13 0x00007ffff44f1766 in belle_sip_client_transaction_notify_response () at /lib/x86_64-linux-gnu/libbellesip.so.1
#14 0x00007ffff44e7fab in  () at /lib/x86_64-linux-gnu/libbellesip.so.1
#15 0x00007ffff44eb05c in  () at /lib/x86_64-linux-gnu/libbellesip.so.1
#16 0x00007ffff44eb8f9 in belle_sip_provider_dispatch_message () at /lib/x86_64-linux-gnu/libbellesip.so.1
#17 0x00007ffff44ca175 in  () at /lib/x86_64-linux-gnu/libbellesip.so.1
#18 0x00007ffff44cc46b in belle_sip_channel_process_data () at /lib/x86_64-linux-gnu/libbellesip.so.1
#19 0x00007ffff44f4242 in  () at /lib/x86_64-linux-gnu/libbellesip.so.1
#20 0x00007ffff44bd848 in belle_sip_main_loop_run () at /lib/x86_64-linux-gnu/libbellesip.so.1
#21 0x00007ffff44bdd3c in belle_sip_main_loop_sleep () at /lib/x86_64-linux-gnu/libbellesip.so.1
#22 0x00007ffff7b4f06f in linphone_core_iterate () at /lib/x86_64-linux-gnu/liblinphone.so.10
#23 0x00005555556f7636 in CoreManager::iterate() (this=0x555556254a50) at ./linphone-app/src/components/core/CoreManager.cpp:364
#24 0x00007ffff52e89af in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#25 0x00007ffff52ec7ba in QTimer::timeout(QTimer::QPrivateSignal) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#26 0x00007ffff52dd0bd in QObject::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x00007ffff6162f4e in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007ffff52b1618 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007ffff53085c1 in QTimerInfoList::activateTimers() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007ffff5308e8c in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007ffff13da729 in g_main_dispatch (context=0x7fffe0005010) at ../../../glib/gmain.c:3444
#32 g_main_context_dispatch (context=context at entry=0x7fffe0005010) at ../../../glib/gmain.c:4162
#33 0x00007ffff13da9b8 in g_main_context_iterate (context=context at entry=0x7fffe0005010, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at ../../../glib/gmain.c:4238
#34 0x00007ffff13daa4c in g_main_context_iteration (context=0x7fffe0005010, may_block=1) at ../../../glib/gmain.c:4303
#35 0x00007ffff53091c6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007ffff52b009b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x00007ffff52b8206 in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#38 0x000055555562d23d in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./linphone-app/src/app/main.cpp:48
(gdb) 


Let me know if there are other things you'd like me to try!

    --dkg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-voip-maintainers/attachments/20221001/c5ebcf33/attachment.sig>


More information about the Pkg-voip-maintainers mailing list