- Package:
- libkf5screen-bin
- Source:
- libkscreen
- Description:
- library for screen management - helpers
- Submitter:
- "Dr. David Alan Gilbert"
- Date:
- 2017-09-24 20:03:03 UTC
- Severity:
- normal
Dear Maintainer,
* What led up to the situation?
Not sure, but I suspect it's the result of setting the display resolution under KDE
in my previous session
* What exactly did you do (or not do) that was effective (or
ineffective)?
Fresh debian 9 install in QEMU (on a Fedora host)
Selected KDE during install
Installed fine, rebooted OK
Logged into KDE session fine
Increased screen res to 1440x900
Set keyboard layout
Logged out
Tried to log back in
* What was the outcome of this action?
Logging in failed, it returned me back to the login manager
a dmesg shows the:
kscreen_backend[1507]: segfault at 10 ip 00007f73a0130568 sp 00007ffd29db5570 error 4 in KSC_XRandR.so[7f73a0116000+23000]
addresses are changing each time, but the IP always seems to end in 568
* What outcome did you expect instead?
I could log back into KDE
I think this is fall out from the X server crashing first - I filed bug 864998 for what looks like a qxl driver bug that is causing X to crash; but still I don't think kscreen_backend should be crashing, it should be exiting with an error if X disappears. Dave
I've done a little digging; firstly I think it's the same as: https://bugs.kde.org/show_bug.cgi?id=368494 (to which I commented although it's closed because it went away when the reporter updated their X server) and https://bugzilla.redhat.com/show_bug.cgi?id=1477592 and possibly https://bugzilla.redhat.com/show_bug.cgi?id=1406752 I added a little debug to libkf5screen #0 XRandRScreen::toKScreenScreen (this=0x559dd8b68980) at ./backends/xrandr/xrandrscreen.cpp:68 screenResources = {d = 0x0} kscreenScreen = {value = 0x559dd8b78a70, d = 0x559dd8b78b90} #1 0x00007fe0e9b18aba in XRandRConfig::toKScreenConfig (this=<optimized out>) at ./backends/xrandr/xrandrconfig.cpp:117 config = {value = 0x559dd8b7ea80, d = 0x559dd8b7eb30} features = {i = 3} kscreenOutputs = {d = 0x559dd8b74bb0} #2 0x00007fe0e9b14c14 in XRandR::config (this=<optimized out>) at ./backends/xrandr/xrandr.cpp:205 No locals. #3 0x0000559dd6d7fac6 in BackendDBusWrapper::setConfig (this=0x559dd8b69c10, configMap=...) at ./src/backendlauncher/backenddbuswrapper.cpp:87 config = {value = 0x559dd8b778c0, d = 0x559dd8b77be0} obj = {d = 0x559dd8b7ea80, o = 0x559dd8b7eb30} #4 0x0000559dd6d815ef in BackendAdaptor::setConfig (in0=..., this=<optimized out>) at ./obj-x86_64-linux-gnu/src/backendlauncher/backendadaptor.cpp:51 No locals. and: KScreen::ScreenPtr XRandRScreen::toKScreenScreen() const { KScreen::ScreenPtr kscreenScreen(new KScreen::Screen); kscreenScreen->setId(m_id); kscreenScreen->setMaxSize(m_maxSize); kscreenScreen->setMinSize(m_minSize); kscreenScreen->setCurrentSize(m_currentSize); XCB::ScopedPointer<xcb_randr_get_screen_resources_reply_t> screenResources(XRandR::screenResources()); kscreenScreen->setMaxActiveOutputsCount(screenResources->num_crtcs); return kscreenScreen; } the problem is the screenResources.d is NULL I don't know the sctructure of the KDE code to know where the right place is to fix this. Dave