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
_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to