Summary: | kscreen reports change of primary screen without apparent reason | ||
---|---|---|---|
Product: | [Plasma] KScreen | Reporter: | Fabio Coatti <fabio.coatti> |
Component: | common | Assignee: | Sebastian Kügler <sebas> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | a.skembris, achilleas.k, andrew.paulsen, antkoul, arthur, auxsvr, brucew, cousinmarc, disknapped, dogshed, istvan.kapcsandi, jason, javier.paya, lithi, markfergy, maxime.chassagneux, n.schnelle, nickbryda, olaf.the.lost.viking, perrantrevan, pterion, samadhi.0110, sebas, shining.scias, thetuxkeeper, tuxfusion, wikispam, wulf.richartz |
Priority: | NOR | ||
Version: | 5.4.95 | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Fabio Coatti
2015-11-26 10:31:31 UTC
The message: kscreen: Primary output changed from KScreen::Output(Id: 571 , Name: "VGA-0" ) ( "VGA-0" ) to Screen::Output(Id: 571 , Name: "VGA-0" ) appears every 5-10 min in the system log on openSUSE Leap 42.1, plasma 5.5.0, since the update of plasma. It happens very frequently with nvidea Dez 12 12:00:19 osiris org.kde.KScreen[9196]: kscreen: Primary output changed from KScreen::Output(Id: 176 , Name: "HDMI-1" ) ( "HDMI-1" ) to KScreen ... and so on Gentoo and nvidia proprietary drivers here as well, running 5.5 However logs get sent to systemd so I'm looking at many more messages *per second* and, in particular, this one is noticeable out of the spam: Dec 15 08:37:05 shaula kded5[1789]: kscreen: Failed to retrieve current config: "Backend invalidated" Uncommon piece of my setup is one extra custom xorg ModeLine that bumps 59.95Hz to 60Hz on my monitor, selected by xrandr from /etc/X11/xinit/xinitrc.d scripts. The common messages are (duplicates removed): Dec 15 08:37:05 shaula kscreen_backend_launcher[4076]: kscreen: Primary output changed from KScreen::Output(Id: 667 , Name: "DVI-I-3" ) ( "DVI-I-3" ) to KScreen::Output(Id: 667 , Name: "DVI-I-3" ) ( "DVI-I-3" ) Dec 15 08:37:05 shaula kded5[1789]: kscreen: Primary output changed from KScreen::Output(Id: 667 , Name: "DVI-I-3" ) ( "DVI-I-3" ) to KScreen::Output(Id: 667 , Name: "DVI-I-3" ) ( "DVI-I-3" ) Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Change detected Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Saving current config to file Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Calculating config ID for KScreen::Config(0x7e5b90) Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Part of the Id: "dbfb250a34ac61354a924bc0098b1396" Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Config ID: "1ddcbf6d3ea69c05e51332b217575713" Dec 15 08:37:05 shaula kded5[1789]: kscreen.kded: Config saved on: "/home/paya/.local/share/kscreen/1ddcbf6d3ea69c05e51332b217575713" The contents of "1ddcbf6d3ea69c05e51332b217575713": [ { "enabled": true, "id": "dbfb250a34ac61354a924bc0098b1396", "metadata": { "fullname": "xrandr-DELL 2209WA-H736H01A173L", "name": "DVI-I-3" }, "mode": { "refresh": 59.99993896484375, "size": { "height": 1050, "width": 1680 } }, "pos": { "x": 0, "y": 0 }, "primary": true, "rotation": 1 } ] (In reply to auxsvr from comment #1) > The message: > > kscreen: Primary output changed from KScreen::Output(Id: 571 , Name: "VGA-0" > ) ( "VGA-0" ) to Screen::Output(Id: 571 , Name: "VGA-0" ) > > appears every 5-10 min in the system log on openSUSE Leap 42.1, plasma > 5.5.0, since the update of plasma. I am getting the same behaviour on openSUSE Leap 42.1 and plasma 5.5, on an ATI 4870. Don't know if it related, but I am using a dual monitor setup, one of the monitors is rotated. Both on DVI outputs. No other serious issues detected, apart from a flicker during log in, which is not present on my laptop, which uses Intel graphics with a dual monitor setup (in that case the external screen is on HDMI). I get the same message very frequently on Intel with Arch Linux. Obviously it stops if I uninstall kscreen! I have the same type of messages in my logs on Arch Linux with the Nvidia proprietary driver. kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "DVI-D-0" ) ( "DVI-D-0" ) to KScreen::Output(Id: 639 , Name: "DVI-D-0" ) ( "DVI-D-0" ) Same problem too, with an Intel HD3000 video card, xf86-video-intel 1:2.99.917+519+g8229390-1 on an Archlinux distribution. It seems correlated with the taskbar blinking. I can confirm this issue with current OpenSUSE Tumbleweed snapshot 20160116; Extended with Plasma 5.5.3; Kernel 4.4.0-1. Nvidia Beta driver NVIDIA-Linux-x86_64-361.18.run Greetings, Same here, NVIDIA dual head, Archlinux, KF 5.18, latest Plasma. It seems that it triggers everytime I close a window. Same here, repeats every 12 seconds exactly Arch Linux, plasma 5 shortened output from "journalctl -b -t kdeinit5 -t kscreen_backend_launcher" : Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:30 hal8000 kdeinit5[892]: kscreen.kded: Change detected Jan 22 11:00:31 hal8000 kdeinit5[892]: kscreen.kded: Saving current config to file Jan 22 11:00:31 hal8000 kdeinit5[892]: kscreen.kded: Calculating config ID for KScreen::Config(0xd3f210) Jan 22 11:00:31 hal8000 kdeinit5[892]: kscreen.kded: Part of the Id: "382290b851cb5c7fff583389bf3bdc61" Jan 22 11:00:31 hal8000 kdeinit5[892]: kscreen.kded: Config ID: "2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:00:31 hal8000 kdeinit5[892]: kscreen.kded: Config saved on: "/home/ken/.local/share/kscreen/2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:42 hal8000 kdeinit5[892]: kscreen.kded: Change detected Jan 22 11:00:43 hal8000 kdeinit5[892]: kscreen.kded: Saving current config to file Jan 22 11:00:43 hal8000 kdeinit5[892]: kscreen.kded: Calculating config ID for KScreen::Config(0xd3f210) Jan 22 11:00:43 hal8000 kdeinit5[892]: kscreen.kded: Part of the Id: "382290b851cb5c7fff583389bf3bdc61" Jan 22 11:00:43 hal8000 kdeinit5[892]: kscreen.kded: Config ID: "2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:00:43 hal8000 kdeinit5[892]: kscreen.kded: Config saved on: "/home/ken/.local/share/kscreen/2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kdeinit5[892]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:00:54 hal8000 kdeinit5[892]: kscreen.kded: Change detected Jan 22 11:00:55 hal8000 kdeinit5[892]: kscreen.kded: Saving current config to file Jan 22 11:00:55 hal8000 kdeinit5[892]: kscreen.kded: Calculating config ID for KScreen::Config(0xd3f210) Jan 22 11:00:55 hal8000 kdeinit5[892]: kscreen.kded: Part of the Id: "382290b851cb5c7fff583389bf3bdc61" Jan 22 11:00:55 hal8000 kdeinit5[892]: kscreen.kded: Config ID: "2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:00:55 hal8000 kdeinit5[892]: kscreen.kded: Config saved on: "/home/ken/.local/share/kscreen/2d0606ab1e3d55cda67323465ed3dec6" Jan 22 11:01:06 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:01:06 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Jan 22 11:01:06 hal8000 kscreen_backend_launcher[921]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 639 , Name: "HDMI-0" ) ( "HDMI-0" ) Full log here: http://pastebin.com/LaVUwcjn Archlinux, Plasma 5.5.4, nvidia driver kscreen: Primary output changed from KScreen::Output(Id: 653 , Name: "DP-2" ) ( "DP-2" ) to KScreen::Output(Id: 653 , Name: "DP-2" ) ( "DP-2" ) kscreen: Primary output changed from KScreen::Output(Id: 653 , Name: "DP-2" ) ( "DP-2" ) to KScreen::Output(Id: 653 , Name: "DP-2" ) ( "DP-2" ) Appears always in pairs, but without any systematics (at lost none that are easily recognizeable for me). Lot of this kind of line for me too (NVIDIA driver) org.kde.KScreen[1506]: kscreen: Primary output changed from KScreen::Output(Id: 638 , Name: "DVI-D-0" ) ( "DVI-D-0" ) to KScreen::Output(Id: 638 , Name: "DVI-D-0" ) ( "DVI-D-0" ) All the time, the same line. Dual head conf ( 2 HDMI , my screen + one TV ) Some time, I have this line too : kscreen_backend[1722]: segfault at 10 ip 00007f9ededaba22 sp 00007ffd5cbe2dd0 error 4 in KSC_XRandR.so[7f9eded98000+20000] And after, all context menu on plasma don't appear. Don't know if it's concerns about this bug. I had the same issue when in Kubuntu when I upgraded to Plasma 5.5.3 and KDE’s Frameworks 5.18.0 from Plasma 5.4.3 and KDE Applications 15.08.3. Prior to the upgrade I did not see this log message at all. org.kde.KScreen[1335]: kscreen: Primary output changed from KScreen::Output(Id: 639 , Name: "DP-2" ) ( "DP-2" ) to KScreen::Output(Id: 639 , Name: "DP-2" ) ( "DP-2" ) I downgraded again to Plasma 5.4.3 (KDE Applications 15.08.3.) because the system logs where starting to fill up with these log messages. This error message comes form the libkscreen package (src/config.cpp) The method that prints this message is called void Config::setPrimaryOutput(const OutputPtr &newPrimary) It is actually classified as a debug message so I am wondering if it is a log level issue or a bug which is causing this method to be called more often than it should? As mention I do not see this message in the system logs on Plasma 5.4.3 (KDE Applications 15.08.3.). Though I could get the message on the command line when running kscreen-console. I could also stop the message by creating ~/.config/QtProject/qtlogging.ini and adding: [Rules] kscreen.debug=false I am guessing if upgrading again to Plasma 5.5.3 (KDE’s Frameworks 5.18.0) the log messages could be turned of by adding the qtlogging.ini change above to the /etc/xdg/QtProject/ directory. I haven't been able to test whether this would work and I will probably won't have time this week. I would also be reluctant to do this unless it can be confirmed that the calling of Config::setPrimaryOutput so many times is not a bug? I've disabled this (rather useless, to the general public) debug message, fixed in 5.6. Disabling the debug message doesn't fix the problem. Can we stay focused on the actual showstopper bug? org.kde.KScreen[2724]: message repeated 23 times: [ kscreen: Primary output changed from KScreen::Output(Id: 591 , Name: "HDMI-0" ) ( "HDMI-0" ) to KScreen::Output(Id: 591 , Name: "HDMI-0" ) ( "HDMI-0" )] Kubuntu 15.10 64-bit KDE Plasma 5.5.4 Qt 5.5.1 Kernel 4.2.0-34-generic Nvidia GT216 (GeForce GT 220) Sure. I've two theories: (1) Qt gets the primary display change heuristics wrong (2) Someone calls into xrandr In either case, an event trigger is triggered which writes out an errorneous config. (1) should be fixed in Qt 5.6.0, could you test against this Qt version? Ow, and please also try with Plasma 5.6, if that's possible. There have been some fixes in kscreen's xrandr backend. I no longer see those messages in .xsession-errors (plasma 5.6.2 and Qt 5.5.1) I confirm this bug is on Kubuntu 16.04. Here's what I see in the syslog: Aug 25 14:26:35 bodhi org.kde.KScreen[5166]: kscreen: Primary output changed from KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) to KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) Aug 25 14:26:35 bodhi org.kde.KScreen[5166]: message repeated 15 times: [ kscreen: Primary output changed from KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) to KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" )] Aug 25 14:28:14 bodhi org.kde.KScreen[5166]: kscreen: Primary output changed from KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) to KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) Aug 25 14:28:14 bodhi org.kde.KScreen[5166]: message repeated 15 times: [ kscreen: Primary output changed from KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" ) to KScreen::Output(Id: 65 , Name: "LVDS-1" ) ( "LVDS-1" )] My solution for the time being was to uninstall kscreen Me too. It's a Dell XPS laptop (from 2012). I sometimes plug it into the TV so I don't want to lose that ability, but when it blanks the screen while sitting on my desk not hooked to anything I have no choice but to reboot. Still affects kscreen 4:5.5.5-0ubuntu1 Kubuntu 16.04 has Plasma/Qt 5.5.x. Please add a comment if this is still an issue with Plasma 5.7.5 and Qt 5.6.2. Have not had any issues with kscreen 4:5.7.5-0ubuntu1 and plasma 4:5.7.5-0ubuntu1 |