Bug 480889 - KDE connect crash while sending multiple images from Android via wi-fi
Summary: KDE connect crash while sending multiple images from Android via wi-fi
Status: RESOLVED DUPLICATE of bug 450135
Alias: None
Product: kdeconnect
Classification: Applications
Component: common (show other bugs)
Version: 23.08.4
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Albert Vaca Cintora
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2024-02-05 10:53 UTC by opensuse.lietuviu.kalba
Modified: 2024-07-31 16:33 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (11.15 KB, text/plain)
2024-02-05 11:36 UTC, opensuse.lietuviu.kalba
Details

Note You need to log in before you can comment on or make changes to this bug.
Description opensuse.lietuviu.kalba 2024-02-05 10:53:23 UTC
Application: kdeconnectd (22.12.3)

Qt Version: 5.15.8
Frameworks Version: 5.103.0
Operating System: Linux 5.14.21-150500.55.44-default x86_64
Windowing System: X11
Distribution: "openSUSE Leap 15.5"
DrKonqi: 5.27.9 [KCrashBackend]

-- Information about the crash:
I tried to send about 7 images (screenshots) from Android at once from Galery. I selected multiple images and pressed button to share them at once. I selected to share via  KDE connect. None paired devices were visible in Android version of KDE connect, though both computer and Android tablet is in same WiFi network and paired in past. I swipe down to update status - to check devices visibility again. 

Expected to see my computer device in Android.

Actual result: KDE connect in laptop computer crashed; it is not visible in Android.

Reproducibility: rare.

Other details: prior this I succesced to send few other photos (only 3 of about 17).

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: KDE Connect tarnyba (kdeconnectd), signal: Aborted

[KCrash Handler]
#4  0x00007f06e54d4d2b in raise () at /lib64/libc.so.6
#5  0x00007f06e54d63e5 in abort () at /lib64/libc.so.6
#6  0x00007f06e598168b in qt_message_fatal (context=<optimized out>, message=<synthetic pointer>...) at global/qlogging.cpp:1914
#7  QMessageLogger::fatal(char const*, ...) const (this=this@entry=0x7f06aa9fc6e0, msg=msg@entry=0x7f06e6f9f538 "Fatal Error: Got cmd %d, while waiting for an answer!") at global/qlogging.cpp:893
#8  0x00007f06e6ed60da in KIO::SlaveBase::waitForAnswer(int, int, QByteArray&, int*) (this=this@entry=0x7f06a0004e20, expected1=expected1@entry=84, expected2=expected2@entry=65, data=..., pCmd=pCmd@entry=0x7f06aa9fc754) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:1149
#9  0x00007f06e6ed81c5 in KIO::SlaveBase::canResume(unsigned long long) (this=this@entry=0x7f06a0004e20, offset=65536) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:1116
#10 0x00007f06de66b664 in FileProtocol::put(QUrl const&, int, QFlags<KIO::JobFlag>) (this=0x7f06a0004e10, url=<optimized out>, _mode=-1, _flags=...) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/ioslaves/file/file.cpp:546
#11 0x00007f06e6edd482 in KIO::SlaveBase::dispatch(int, QByteArray const&) (this=0x7f06a0004e20, command=68, data=...) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:1289
#12 0x00007f06e6edde26 in KIO::SlaveBase::dispatchLoop() (this=this@entry=0x7f06a0004e20) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:342
#13 0x00007f06e6f76c53 in KIO::WorkerThread::run() (this=0x55ed03bbd160) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/workerthread.cpp:62
#14 0x00007f06e59a59fc in QThreadPrivate::start(void*) (arg=0x55ed03bbd160) at thread/qthread_unix.cpp:330
#15 0x00007f06e45286ea in start_thread () at /lib64/libpthread.so.0
#16 0x00007f06e55a250f in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f06ba3ff700 (LWP 23488) "QLibProxyWrappe"):
#1  0x00007f06e59a7da4 in QtLinuxFutex::_q_futex(int*, int, int, unsigned long long, int*, int) (val3=0, addr2=0x0, val2=0, val=<optimized out>, op=0, addr=<optimized out>) at thread/qfutex_p.h:114
#2  QtLinuxFutex::futexWait<QBasicAtomicInteger<unsigned int> >(QBasicAtomicInteger<unsigned int>&, QBasicAtomicInteger<unsigned int>::Type) (expectedValue=<optimized out>, futex=<optimized out>) at thread/qfutex_p.h:133
#3  futexSemaphoreTryAcquire_loop<false>(QBasicAtomicInteger<unsigned long long>&, unsigned long long, unsigned long long, int) (timeout=-1, nn=8589934593, curValue=<optimized out>, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire<false>(QBasicAtomicInteger<unsigned long long>&, int, int) (timeout=-1, n=n@entry=1, u=...) at thread/qsemaphore.cpp:262
#5  QSemaphore::acquire(int) (this=this@entry=0x7f06e5319540 <(anonymous namespace)::Q_QGS_libProxyWrapper::innerFunction()::holder+32>, n=n@entry=1) at thread/qsemaphore.cpp:326
#6  0x00007f06e5251fe4 in QLibProxyWrapper::run() (this=0x7f06e5319520 <(anonymous namespace)::Q_QGS_libProxyWrapper::innerFunction()::holder>) at kernel/qnetworkproxy_libproxy.cpp:179
#7  0x00007f06e59a59fc in QThreadPrivate::start(void*) (arg=0x7f06e5319520 <(anonymous namespace)::Q_QGS_libProxyWrapper::innerFunction()::holder>) at thread/qthread_unix.cpp:330
#8  0x00007f06e45286ea in start_thread () at /lib64/libpthread.so.0
#9  0x00007f06e55a250f in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f06c1469700 (LWP 2857) "Qt bearer threa"):
#1  0x00007f06e32c1b49 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f06e32c1c5c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f06e5c0197b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f06b4000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f06e5b9d87a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f06c1468ba0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:235
#5  0x00007f06e59a4497 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:547
#6  0x00007f06e59a59fc in QThreadPrivate::start(void*) (arg=0x55ed03a48140) at thread/qthread_unix.cpp:330
#7  0x00007f06e45286ea in start_thread () at /lib64/libpthread.so.0
#8  0x00007f06e55a250f in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f06cc9ff700 (LWP 2845) "kdeconn:disk$0"):
#1  0x00007f06cd6e73e9 in cnd_wait (cond=<optimized out>, mtx=<optimized out>) at ../src/c11/impl/threads_posix.c:135
#2  0x00007f06cd69941b in util_queue_thread_func (input=input@entry=0x55ed039f9500) at ../src/util/u_queue.c:290
#3  0x00007f06cd6e7327 in impl_thrd_routine (p=<optimized out>) at ../src/c11/impl/threads_posix.c:67
#4  0x00007f06e45286ea in start_thread () at /lib64/libpthread.so.0
#5  0x00007f06e55a250f in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f06d73ff700 (LWP 2832) "QDBusConnection"):
#1  0x00007f06e32c1b49 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007f06e32c1c5c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007f06e5c0195c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f06d0000b60, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#4  0x00007f06e5b9d87a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f06d73feb70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:235
#5  0x00007f06e59a4497 in QThread::exec() (this=this@entry=0x7f06e6d09060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:547
#6  0x00007f06e6c8f2e5 in QDBusConnectionManager::run() (this=0x7f06e6d09060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:179
#7  0x00007f06e59a59fc in QThreadPrivate::start(void*) (arg=0x7f06e6d09060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:330
#8  0x00007f06e45286ea in start_thread () at /lib64/libpthread.so.0
#9  0x00007f06e55a250f in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f06e2a39ec0 (LWP 2799) "kdeconnectd"):
#1  0x00007f06e59a7da4 in QtLinuxFutex::_q_futex(int*, int, int, unsigned long long, int*, int) (val3=0, addr2=0x0, val2=0, val=<optimized out>, op=0, addr=<optimized out>) at thread/qfutex_p.h:114
#2  QtLinuxFutex::futexWait<QBasicAtomicInteger<unsigned int> >(QBasicAtomicInteger<unsigned int>&, QBasicAtomicInteger<unsigned int>::Type) (expectedValue=<optimized out>, futex=<optimized out>) at thread/qfutex_p.h:133
#3  futexSemaphoreTryAcquire_loop<false>(QBasicAtomicInteger<unsigned long long>&, unsigned long long, unsigned long long, int) (timeout=-1, nn=8589934593, curValue=<optimized out>, u=...) at thread/qsemaphore.cpp:219
#4  futexSemaphoreTryAcquire<false>(QBasicAtomicInteger<unsigned long long>&, int, int) (timeout=-1, n=n@entry=1, u=...) at thread/qsemaphore.cpp:262
#5  QSemaphore::acquire(int) (this=this@entry=0x7ffdc3c97590, n=n@entry=1) at thread/qsemaphore.cpp:326
#6  0x00007f06e5bdc9d2 in doActivate<false>(QObject*, int, void**) (sender=0x55ed03c96a30, signal_index=0, argv=0x7ffdc3c97610) at kernel/qobject.cpp:3904
#7  0x00007f06e5bd5e82 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x55ed03c96a30, m=m@entry=0x7f06e5e807c0 <QObject::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffdc3c97610) at kernel/qobject.cpp:3983
#8  0x00007f06e5bd5f2f in QObject::destroyed(QObject*) (this=this@entry=0x55ed03c96a30, _t1=<optimized out>, _t1@entry=0x55ed03c96a30) at .moc/moc_qobject.cpp:219
#9  0x00007f06e5bda805 in QObject::~QObject() (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1010
#10 0x00007f06e6ceab09 in QDBusServiceWatcher::~QDBusServiceWatcher() (this=0x55ed03c96a30, __in_chrg=<optimized out>) at qdbusservicewatcher.cpp:260
#11 0x00007f06e5bcfb8b in QObjectPrivate::deleteChildren() (this=0x55ed03cb07e0) at kernel/qobject.cpp:2137
#12 0x00007f06e5bda52e in QObject::~QObject() (this=<optimized out>, __in_chrg=<optimized out>) at kernel/qobject.cpp:1115
#13 0x00007f06e50ceb33 in OrgKdeJobViewServerV2Interface::~OrgKdeJobViewServerV2Interface() (this=0x55ed03c96a10, __in_chrg=<optimized out>) at /usr/src/debug/kjobwidgets-5.103.0-150500.1.2.x86_64/build/src/jobviewserverv2interface.cpp:23
#14 OrgKdeJobViewServerV2Interface::~OrgKdeJobViewServerV2Interface() (this=0x55ed03c96a10, __in_chrg=<optimized out>) at /usr/src/debug/kjobwidgets-5.103.0-150500.1.2.x86_64/build/src/jobviewserverv2interface.cpp:25
#15 0x00007f06e50d42ec in std::default_delete<OrgKdeJobViewServerV2Interface>::operator()(OrgKdeJobViewServerV2Interface*) const (this=<optimized out>, __ptr=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:78
#16 std::unique_ptr<OrgKdeJobViewServerV2Interface, std::default_delete<OrgKdeJobViewServerV2Interface> >::~unique_ptr() (this=0x7f06e50eb0d0 <(anonymous namespace)::Q_QGS_serverProxy::innerFunction()::holder+16>, __in_chrg=<optimized out>) at /usr/include/c++/7/bits/unique_ptr.h:263
#17 KSharedUiServerV2Proxy::~KSharedUiServerV2Proxy() (this=0x7f06e50eb0c0 <(anonymous namespace)::Q_QGS_serverProxy::innerFunction()::holder>, __in_chrg=<optimized out>) at /usr/src/debug/kjobwidgets-5.103.0-150500.1.2.x86_64/src/kuiserverv2jobtracker.cpp:413
#18 0x00007f06e50d4309 in Holder::~Holder() (this=<optimized out>, __in_chrg=<optimized out>) at /usr/src/debug/kjobwidgets-5.103.0-150500.1.2.x86_64/src/kuiserverv2jobtracker.cpp:25
#19 0x00007f06e54d7b79 in __run_exit_handlers () at /lib64/libc.so.6
#20 0x00007f06e54d7d0a in  () at /lib64/libc.so.6
#21 0x00007f06e1aea2d5 in QXcbConnection::processXcbEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55ed03889be0, flags=flags@entry=...) at qxcbconnection.cpp:1047
#22 0x00007f06e1b0f653 in xcbSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at qxcbeventdispatcher.cpp:103
#23 0x00007f06e32c182b in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#24 0x00007f06e32c1bd0 in  () at /usr/lib64/libglib-2.0.so.0
#25 0x00007f06e32c1c5c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#26 0x00007f06e5c0197b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x55ed0394bb20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#27 0x00007f06e5b9d87a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffdc3c97ab0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:235
#28 0x00007f06e5ba70b7 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1375
#29 0x00007f06e5ff3a7c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1870
#30 0x00007f06e6754495 in QApplication::exec() () at kernel/qapplication.cpp:2832
#31 0x000055ed02af508e in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kdeconnect-kde-22.12.3-bp155.1.6.x86_64/daemon/kdeconnectd.cpp:185
[Inferior 1 (process 2799) detached]

The reporter indicates this bug may be a duplicate of or related to bug 475747.

Reported using DrKonqi
Comment 1 opensuse.lietuviu.kalba 2024-02-05 11:36:19 UTC
Created attachment 165562 [details]
New crash information added by DrKonqi

kdeconnectd (22.12.3) using Qt 5.15.8

Same crash one again while sending several images

-- Backtrace (Reduced):
#6  0x00007f6b1a4f368b in qt_message_fatal (context=<optimized out>, message=<synthetic pointer>...) at global/qlogging.cpp:1914
#7  QMessageLogger::fatal(char const*, ...) const (this=this@entry=0x7f6aedbfe6e0, msg=msg@entry=0x7f6b1bb11538 "Fatal Error: Got cmd %d, while waiting for an answer!") at global/qlogging.cpp:893
#8  0x00007f6b1ba480da in KIO::SlaveBase::waitForAnswer(int, int, QByteArray&, int*) (this=this@entry=0x7f6adc004e20, expected1=expected1@entry=84, expected2=expected2@entry=65, data=..., pCmd=pCmd@entry=0x7f6aedbfe754) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:1149
#9  0x00007f6b1ba4a1c5 in KIO::SlaveBase::canResume(unsigned long long) (this=this@entry=0x7f6adc004e20, offset=65536) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/core/slavebase.cpp:1116
#10 0x00007f6b14220664 in FileProtocol::put(QUrl const&, int, QFlags<KIO::JobFlag>) (this=0x7f6adc004e10, url=<optimized out>, _mode=-1, _flags=...) at /usr/src/debug/kio-5.103.0-150500.1.2.x86_64/src/ioslaves/file/file.cpp:546
Comment 2 TraceyC 2024-02-07 02:45:56 UTC
I was able to reproduce this, intermittently
See https://bugs.kde.org/show_bug.cgi?id=418074 

There are a number of bugs related to crashes in kdeconnect if the user atteempts to transfer multiple files, or a large file, from a phone to Plasma. I'm not sure they are all duplicates. I'm listing them here so that someone more knowledgeable can more easily take a look at them as a group.

https://bugs.kde.org/show_bug.cgi?id=418074
https://bugs.kde.org/show_bug.cgi?id=467015
https://bugs.kde.org/show_bug.cgi?id=470273
https://bugs.kde.org/show_bug.cgi?id=471881
https://bugs.kde.org/show_bug.cgi?id=473071
https://bugs.kde.org/show_bug.cgi?id=474495
https://bugs.kde.org/show_bug.cgi?id=475747
https://bugs.kde.org/show_bug.cgi?id=480889

## System details

kdeconnect 23.08.4

Operating System: Solus 4.5
KDE Plasma Version: 5.27.10
KDE Frameworks Version: 5.114.0
Qt Version: 5.15.12
Kernel Version: 6.6.15-272.current (64-bit)
Graphics Platform: X11
Processors: 16 × 11th Gen Intel® Core™ i7-11800H @ 2.30GHz
Memory: 62.5 GiB of RAM
Graphics Processor: NVIDIA GeForce RTX 3060 Laptop GPU/PCIe/SSE2
Manufacturer: Dell Inc.
Product Name: XPS 17 9710

Phone:
Sony Xperia 1 III
Model: SQ-BC62
Android v12 - kdeconnect 1.29.0
Comment 3 cwo 2024-07-31 16:33:12 UTC
Thank you for the bug report! This crash is already reported and being tracked, please follow the linked bug report for updates.

*** This bug has been marked as a duplicate of bug 450135 ***