Xrandr - startet automatisch und belegt ~80% eines Kerns

Hallo,

Ich beobachte seit ein paar Wochen folgendes Problem auf meinen Notebook:
Einige Zeit nach dem Start wird Xrandr gestartet und beansprucht massiv Leistung ~80% eines Kerns, bei gleichzeitig minimaler RAM-Nutzung. Zusätzlich nimmt Xorg.bin ebenfalls ~70% eines Kerns.

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 08:09 ?        00:00:06 /usr/lib/systemd/systemd --switched-root --system --deserialize=39
...
root      9119     1 58 08:53 ?        01:11:16 xrandr -d :0

Wie könnte ich weiter vorgehen um dem auf die Spur zu kommen.
Meine Frage:
Was macht der Prozess mit der CPU-Zeit?
Wer startet den Prozess (Welcher Dienst / welches Skript ruft den auf) ?

Wenn ich den Prozess einfach kille kann ich keine Funktionalitätseinschränkungen feststellen, aber ein Script schreiben welches den Prozess sucht und killt kann ja nicht die Lösung sein.

Danke und beste Grüße
Reimar

Keine Ahnung!

Einen Prozess aufrufen kann ein jeder!

Da hast du vollkommen recht. Vor der Lösung des Problems kommt die präzise Diagnostik. Hilfreich dabei sind die Werkzeuge von systemd, insbesondere systemctl status, systemd-cgls, systemd-cgtop und journalctl. Es ist immer von Vorteil, die Wurzel des Übels zu finden und diese dann zu entfernen.

Auf dem infamen Host erlangen wird xrandr öfter einmal von kscreen_backend_launcher aufgerufen. Ob das in der aktuellen Konfiguration tatsächlich Vorteile mit sich bringt weiß ich nicht. Nachteilig scheint es aber keinesfalls zu sein, so dass ich den Vorgang nicht näher untersucht habe. Als ich gestern Abend erlangen aus suspend to RAM geweckt habe:

 erlangen:~ # journalctl -b0 _PID=1944
...
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputProperty (ignored)
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  39967438
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Property:  EDIDleteA
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         State (newValue, Deleted):  1
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputProperty (ignored)
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  39967438
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Property:  EDID
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         State (newValue, Deleted):  1
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputChange
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         CRTC:  62
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Mode:  70
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Connection:  "Disconnected"
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Subpixel Order:  0
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRScreenChangeNotify
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Config_timestamp:  39967553
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Window: 23068677
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Root: 1853
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Size ID: 65535
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Size:  3840 2160
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         SizeMM:  508 285
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputChange
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         CRTC:  62
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Mode:  70
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Connection:  "Disconnected"
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Subpixel Order:  0
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: XRandROutput 67 update 
                                                                  m_connected: 0 
                                                                  m_crtc XRandRCrtc(0x557483ede420) 
                                                                  CRTC: 62 
                                                                  MODE: 70 
                                                                  Connection: 1
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Output 67 : connected = false , enabled = true
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: XRandROutput 67 update 
                                                                  m_connected: 1 
                                                                  m_crtc XRandRCrtc(0x557483ede420) 
                                                                  CRTC: 62 
                                                                  MODE: 70 
                                                                  Connection: 1
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Output 67 : connected = false , enabled = true
Sep 25 19:41:34 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Emitting configChanged()
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputChange
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         CRTC:  62
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Mode:  70
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Connection:  "Connected"
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Subpixel Order:  0
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRScreenChangeNotify
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Config_timestamp:  39969306
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Window: 23068677
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Root: 1853
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Size ID: 0
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Size:  3840 2160
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         SizeMM:  508 285
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper: RRNotify_OutputChange
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Timestamp:  10346
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Output:  67
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         CRTC:  62
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Mode:  70
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Rotation:  "Rotate_0"
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Connection:  "Connected"
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xcb.helper:         Subpixel Order:  0
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: XRandROutput 67 update 
                                                                  m_connected: 1 
                                                                  m_crtc XRandRCrtc(0x557483ede420) 
                                                                  CRTC: 62 
                                                                  MODE: 70 
                                                                  Connection: 0
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Connected output 67 to CRTC 62
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Output 67 : connected = true , enabled = true
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: XRandROutput 67 update 
                                                                  m_connected: 0 
                                                                  m_crtc XRandRCrtc(0x557483ede420) 
                                                                  CRTC: 62 
                                                                  MODE: 70 
                                                                  Connection: 0
Sep 25 19:41:35 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Output 67 : connected = true , enabled = true
Sep 25 19:41:36 erlangen kscreen_backend_launcher[1944]: kscreen.xrandr: Emitting configChanged()
erlangen:~ # 

Darauf stellt sich mir die Frage:
Was hast du gemacht, das xrandr automatisch startet?

OK, manchmal reicht es das Problem zu formulieren und mit anderen zu teilen, damit sich was bewegt.
Ich war mal so frei das Kommando selbst als root auszuführen

sudo -i
xrandr -d :0

und siehe da es verhält sich genauso → hohe Last. Aber zusätzlich schreibt es seine Probleme in die Konsole:

Authorization required, but no authorization protocol specified

und das wiederholt es endlos und so schnell wie möglich → daher die Last.
Mit

xhost + 

als user ist der Spuk vorbei. Ich befürchte das ich mir damit aber keinen Gefallen tue …

Ich vermute das tat xrandr schon immer, aber ich habe neulich mit xhost rumgespielt, da ich eine JAVA-GUI-Anwendung habe die echter root sein möchte.