[Differential] [Commented On] D2330: [xrandr backend] fall back to preferred mode, fix crash
sebas (Sebastian Kügler)
noreply at phabricator.kde.org
Tue Aug 2 01:33:03 UTC 2016
sebas added a comment.
Here's the backtrace I get without this patch. The crash actually happens inside the debug message, but when it happens, it also means that the mode id we try to pass into xcb_randr_set_crtc_config is invalid (most likely 0)
with disabled output:
kscreen-doctor output.280.enable output.280.position.2560,0 output.mode.
/home/sebas/kf5/install/lib/x86_64-linux-gnu/libexec/kf5/kscreen_backend_launcher crashes
[01::04:27.959] XRandRConfig::enableOutput: Trying to find a CRTC for 280 , crtcs: QMap((63, XRandRCrtc(0x479fc0))(64, XRandRCrtc(0x47a010))(65, XRandRCrtc(0x4808c0)))
[01::04:27.959] XRandRConfig::enableOutput: Testing CRTC 63
[01::04:27.959] XRandRConfig::enableOutput: Free: false
[01::04:27.960] XRandRConfig::enableOutput: Mode: 72
[01::04:27.960] XRandRConfig::enableOutput: Possible outputs: QVector(66, 67, 68, 69, 70, 278, 279, 280)
[01::04:27.960] XRandRConfig::enableOutput: Connected outputs: QVector(66)
[01::04:27.960] XRandRConfig::enableOutput: Geometry: QRect(0,0 2560x1440)
[01::04:27.960] XRandRConfig::enableOutput: Testing CRTC 64
[01::04:27.960] XRandRConfig::enableOutput: Free: true
[01::04:27.960] XRandRConfig::enableOutput: Mode: 0
[01::04:27.960] XRandRConfig::enableOutput: Possible outputs: QVector(66, 67, 68, 69, 70, 278, 279, 280)
[01::04:27.960] XRandRConfig::enableOutput: Connected outputs: QVector()
[01::04:27.960] XRandRConfig::enableOutput: Geometry: QRect(2560,0 0x0)
[01::04:27.961] XRandRConfig::enableOutput: RRSetCrtcConfig (enable output)
[01::04:27.961] XRandRConfig::enableOutput: Output: 280 ( "DP-2-3" )
[01::04:27.961] XRandRConfig::enableOutput: New CRTC: 64
[01::04:27.961] XRandRConfig::enableOutput: Pos: QPoint(2560,0)
Thread 1 "kscreen_backend" received signal SIGSEGV, Segmentation fault.
0x00007ffff7fd71ee in KScreen::Mode::size (this=0x0) at /home/sebas/kf5/src/kde/workspace/libkscreen/src/mode.cpp:102
102 return d->size;
(gdb) bt
#0 0x00007ffff7fd71ee in KScreen::Mode::size (this=0x0) at /home/sebas/kf5/src/kde/workspace/libkscreen/src/mode.cpp:102
#1 0x00007fffe908667b in XRandRConfig::enableOutput (this=0x479100, kscreenOutput=...) at /home/sebas/kf5/src/kde/workspace/libkscreen/backends/xrandr/xrandrconfig.cpp:521
#2 0x00007fffe9081798 in XRandRConfig::applyKScreenConfig (this=0x479100, config=...) at /home/sebas/kf5/src/kde/workspace/libkscreen/backends/xrandr/xrandrconfig.cpp:290
#3 0x00007fffe907cb20 in XRandR::setConfig (this=0x47a0c0, config=...) at /home/sebas/kf5/src/kde/workspace/libkscreen/backends/xrandr/xrandr.cpp:215
#4 0x00000000004065e4 in BackendDBusWrapper::setConfig (this=0x480210, configMap=...) at /home/sebas/kf5/src/kde/workspace/libkscreen/src/backendlauncher/backenddbuswrapper.cpp:85
#5 0x0000000000408496 in BackendAdaptor::setConfig (this=0x479dd0, in0=...) at /home/sebas/kf5/build/kde/workspace/libkscreen/src/backendlauncher/backendadaptor.cpp:51
#6 0x00000000004085f8 in BackendAdaptor::qt_static_metacall (_o=0x479dd0, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fffffffce80)
at /home/sebas/kf5/build/kde/workspace/libkscreen/src/backendlauncher/backendadaptor.moc:113
#7 0x0000000000408774 in BackendAdaptor::qt_metacall (this=0x479dd0, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fffffffce80)
at /home/sebas/kf5/build/kde/workspace/libkscreen/src/backendlauncher/backendadaptor.moc:156
#8 0x00007ffff7f0c280 in QDBusConnectionPrivate::deliverCall (this=0x7fffdc0030f0, object=0x479dd0, msg=..., metaTypes=..., slotIdx=8) at qdbusintegrator.cpp:978
#9 0x00007ffff7f0ba70 in QDBusConnectionPrivate::activateCall (this=0x7fffdc0030f0, object=0x479dd0, flags=273, msg=...) at qdbusintegrator.cpp:881
#10 0x00007ffff7f0f71e in QDBusConnectionPrivate::activateObject (this=0x7fffdc0030f0, node=..., msg=..., pathStartPos=8) at qdbusintegrator.cpp:1470
#11 0x00007ffff7f0ff76 in QDBusActivateObjectEvent::placeMetaCall (this=0x7fffdc00f6c0) at qdbusintegrator.cpp:1590
#12 0x00007ffff739cd7e in QObject::event (this=0x480210, e=0x7fffdc00f6c0) at kernel/qobject.cpp:1256
#13 0x00007ffff7363052 in QCoreApplicationPrivate::notify_helper (receiver=0x480210, event=0x7fffdc00f6c0) at kernel/qcoreapplication.cpp:1149
#14 0x00007ffff7362cd5 in doNotify (receiver=0x480210, event=0x7fffdc00f6c0) at kernel/qcoreapplication.cpp:1090
#15 0x00007ffff7362c48 in QCoreApplication::notify (this=0x7fffffffdab0, receiver=0x480210, event=0x7fffdc00f6c0) at kernel/qcoreapplication.cpp:1076
#16 0x00007ffff778e5b0 in QGuiApplication::notify (this=0x7fffffffdab0, object=0x480210, event=0x7fffdc00f6c0) at kernel/qguiapplication.cpp:1616
#17 0x00007ffff7362bd8 in QCoreApplication::notifyInternal2 (receiver=0x480210, event=0x7fffdc00f6c0) at kernel/qcoreapplication.cpp:1015
#18 0x00007ffff7366c0e in QCoreApplication::sendEvent (receiver=0x480210, event=0x7fffdc00f6c0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:225
#19 0x00007ffff7363fc0 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x426c90) at kernel/qcoreapplication.cpp:1650
#20 0x00007ffff7363940 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1508
#21 0x00007ffff73dcb1e in postEventSourceDispatch (s=0x468920) at kernel/qeventdispatcher_glib.cpp:270
#22 0x00007ffff2d261a7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007ffff2d26400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007ffff2d264ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007ffff73dd2f7 in QEventDispatcherGlib::processEvents (this=0x467030, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#26 0x00007fffeee481ac in QPAEventDispatcherGlib::processEvents (this=0x467030, flags=...) at eventdispatchers/qeventdispatcher_glib.cpp:115
#27 0x00007ffff735f54e in QEventLoop::processEvents (this=0x7fffffffda00, flags=...) at kernel/qeventloop.cpp:128
#28 0x00007ffff735f84a in QEventLoop::exec (this=0x7fffffffda00, flags=...) at kernel/qeventloop.cpp:204
#29 0x00007ffff7363322 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1285
#30 0x00007ffff778e560 in QGuiApplication::exec () at kernel/qguiapplication.cpp:1607
#31 0x0000000000404c40 in main (argc=1, argv=0x7fffffffdc28) at /home/sebas/kf5/src/kde/workspace/libkscreen/src/backendlauncher/main.cpp:43
REPOSITORY
rLIBKSCREEN KScreen Library
REVISION DETAIL
https://phabricator.kde.org/D2330
EMAIL PREFERENCES
https://phabricator.kde.org/settings/panel/emailpreferences/
To: sebas, dvratil
Cc: plasma-devel, #plasma, ali-mohamed, jensreuterberg, abetts, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20160802/0ca2ecf3/attachment-0001.html>
More information about the Plasma-devel
mailing list