Bug 416280 - Okular crashes when external DisplayLink displays are lost
Summary: Okular crashes when external DisplayLink displays are lost
Status: RESOLVED WORKSFORME
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Okular developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2020-01-15 08:22 UTC by peter.lichard
Modified: 2020-02-14 04:33 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description peter.lichard 2020-01-15 08:22:09 UTC
Application: okular (1.9.70)

Qt Version: 5.13.2
Frameworks Version: 5.67.0
Operating System: Linux 5.0.0-37-generic x86_64
Windowing system: X11
Distribution: KDE neon Unstable Edition

-- Information about the crash:
- What I was doing when the application crashed:
Normal viewing of a pdf file while using external displays with DisplayLink. (The crappy D6000 adapter)
The connection to the displays is periodically lost due to issues with their drivers (even after all possible fixes with power management, udev rules and whatnot) and this is when Okular crashes.

This happens _only_ when Okular is on an external display.  (Tried multiple times)
Pulling the thunderbolt connector has the same effect.

The crash can be reproduced every time.

-- Backtrace:
Application: Okular (okular), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f14dba24800 (LWP 27122))]

Thread 4 (Thread 0x7f14af2e3700 (LWP 27125)):
#0  0x00007f14d46719f3 in futex_wait_cancelable (private=<optimized out>, expected=0, futex_word=0x5650bf3736c8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  __pthread_cond_wait_common (abstime=0x0, mutex=0x5650bf373678, cond=0x5650bf3736a0) at pthread_cond_wait.c:502
#2  __pthread_cond_wait (cond=0x5650bf3736a0, mutex=0x5650bf373678) at pthread_cond_wait.c:655
#3  0x00007f14afeb52cb in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#4  0x00007f14afeb4ff7 in ?? () from /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
#5  0x00007f14d466b6db in start_thread (arg=0x7f14af2e3700) at pthread_create.c:463
#6  0x00007f14d769b88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f14c17cf700 (LWP 27124)):
#0  0x00007f14d768ebf9 in __GI___poll (fds=0x7f14bc004db0, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f14d23395c9 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f14d23396dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f14d7fe1b9b in QEventDispatcherGlib::processEvents (this=0x7f14bc000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f14d7f8206a in QEventLoop::exec (this=this@entry=0x7f14c17ced70, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#5  0x00007f14d7d9d3aa in QThread::exec (this=<optimized out>) at thread/qthread.cpp:531
#6  0x00007f14d84580e5 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007f14d7d9eb52 in QThreadPrivate::start (arg=0x7f14d86cfd80) at thread/qthread_unix.cpp:360
#8  0x00007f14d466b6db in start_thread (arg=0x7f14c17cf700) at pthread_create.c:463
#9  0x00007f14d769b88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f14ca639700 (LWP 27123)):
#0  0x00007f14d768ebf9 in __GI___poll (fds=0x7f14ca638ca8, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29
#1  0x00007f14d50ec747 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f14d50ee36a in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f14cd41ee10 in QXcbEventQueue::run (this=0x5650bf0de090) at qxcbeventqueue.cpp:228
#4  0x00007f14d7d9eb52 in QThreadPrivate::start (arg=0x5650bf0de090) at thread/qthread_unix.cpp:360
#5  0x00007f14d466b6db in start_thread (arg=0x7f14ca639700) at pthread_create.c:463
#6  0x00007f14d769b88f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f14dba24800 (LWP 27122)):
[KCrash Handler]
#6  QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::operator-> (this=0x8) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:118
#7  qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > > (ptr=...) at ../../include/QtCore/../../src/corelib/global/qglobal.h:1055
#8  QScreen::d_func (this=this@entry=0x0) at ../../include/QtGui/../../src/gui/kernel/qscreen.h:69
#9  QScreen::size (this=this@entry=0x0) at kernel/qscreen.cpp:221
#10 0x00007f14d880d6bd in QScreen::physicalDotsPerInchY (this=this@entry=0x0) at kernel/qscreen.cpp:252
#11 0x00007f14d93811d8 in QScrollerPrivate::setDpiFromWidget (this=this@entry=0x5650bf23b0a0, widget=<optimized out>) at util/qscroller.cpp:1035
#12 0x00007f14d93845b8 in QScrollerPrivate::prepareScrolling (this=this@entry=0x5650bf23b0a0, position=...) at util/qscroller.cpp:1430
#13 0x00007f14d9385a5f in QScroller::scrollTo (this=0x5650bf39a520, pos=..., scrollTime=scrollTime@entry=0) at util/qscroller.cpp:680
#14 0x00007f14bbd4d99d in PageView::scrollTo (this=this@entry=0x5650bf395790, x=0, y=533, smoothMove=<optimized out>) at ./ui/pageview.cpp:4453
#15 0x00007f14bbd4da7e in PageView::center (this=this@entry=0x5650bf395790, cx=<optimized out>, cy=<optimized out>, smoothMove=smoothMove@entry=false) at ./ui/pageview.cpp:4437
#16 0x00007f14bbd4de3d in PageView::slotRelayoutPages (this=this@entry=0x5650bf395790) at ./ui/pageview.cpp:4800
#17 0x00007f14bbd4edec in PageView::delayedResizeEvent (this=0x5650bf395790) at ./ui/pageview.cpp:4823
#18 0x00007f14d7fb49ef in QtPrivate::QSlotObjectBase::call (a=0x7ffee35c7d50, r=0x5650bf395790, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#19 QMetaObject::activate (sender=sender@entry=0x5650bf399fa0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=<optimized out>, argv@entry=0x7ffee35c7d50) at kernel/qobject.cpp:3789
#20 0x00007f14d7fb4f97 in QMetaObject::activate (sender=sender@entry=0x5650bf399fa0, m=m@entry=0x7f14d8439d80 <QTimer::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffee35c7d50) at kernel/qobject.cpp:3660
#21 0x00007f14d7fc1607 in QTimer::timeout (this=this@entry=0x5650bf399fa0, _t1=...) at .moc/moc_qtimer.cpp:205
#22 0x00007f14d7fc1968 in QTimer::timerEvent (this=0x5650bf399fa0, e=<optimized out>) at kernel/qtimer.cpp:255
#23 0x00007f14d7fb53eb in QObject::event (this=0x5650bf399fa0, e=<optimized out>) at kernel/qobject.cpp:1282
#24 0x00007f14d9017eac in QApplicationPrivate::notify_helper (this=this@entry=0x5650bf0becd0, receiver=receiver@entry=0x5650bf399fa0, e=e@entry=0x7ffee35c80c0) at kernel/qapplication.cpp:3703
#25 0x00007f14d901f4b0 in QApplication::notify (this=0x7ffee35c83f0, receiver=0x5650bf399fa0, e=0x7ffee35c80c0) at kernel/qapplication.cpp:3449
#26 0x00007f14d7f83f08 in QCoreApplication::notifyInternal2 (receiver=0x5650bf399fa0, event=0x7ffee35c80c0) at kernel/qcoreapplication.cpp:1095
#27 0x00007f14d7fe1009 in QTimerInfoList::activateTimers (this=0x5650bf115ac0) at kernel/qtimerinfo_unix.cpp:643
#28 0x00007f14d7fe17d1 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:183
#29 0x00007f14d2339417 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007f14d2339650 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f14d23396dc in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f14d7fe1b7f in QEventDispatcherGlib::processEvents (this=0x5650bf119bd0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#33 0x00007f14d7f8206a in QEventLoop::exec (this=this@entry=0x7ffee35c8310, flags=..., flags@entry=...) at kernel/qeventloop.cpp:225
#34 0x00007f14d7f8b3e0 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1403
#35 0x00005650be90fb77 in main (argc=<optimized out>, argv=<optimized out>) at ./shell/main.cpp:95

Possible duplicates by query: bug 413349, bug 411378, bug 411089, bug 410786, bug 379388.

Reported using DrKonqi
Comment 1 Albert Astals Cid 2020-01-15 21:48:56 UTC
It seems to me this is a bug that was fixed in Qt 5.14

Can you please wait until neon updates to Qt 5.14 and tell us if this still crashes for you?

Sadly there's not much we can do in our side
Comment 2 Bug Janitor Service 2020-01-30 04:33:16 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 3 Bug Janitor Service 2020-02-14 04:33:13 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!