X server heavy CPU usage for a single user

I’ve recently setup an additional user account on my TW Laptop, to use it for work, in addition to the one that I’m using for personal purposes. I use KDE Plasma.

Let’s call them respectively work and *personal.

*I noticed that when I log in as the new account work, there is a process from the X server that uses a lot of CPU, making the system slow and raising the hardware heat.

This process is

/usr/bin/X -nolisten tcp -auth /run/sddm/{cc4779d9-7349-4492-8e3f-064f1fe9d238} -background none -noreset -displayfd 18 -seat seat0 vt7

and it is owned by root, it is run on tty7 (the default I think).

Also, along this one there are also three/four processes, always owned by root, called xdpyinfo, that use a fair amount of CPU as well. I suppose that these are related to the previous one, since this only happens when I login as work and not as personal.

Summarizing, here is what I have gathered:

  • I have X
    and xdpyinfo processes with high CPU usage, only when I login with work account; - I think that they are related, because they do not appear when I login with personal
    ; - this seems to be related to sddm
    ; - this never happened until I had only personal
    account, only after I added work and started using it.

I’d like to solve this because it is causing moderate problems here.

I hope that my explanation was clear enough, and of course I’m available to provide any other info/log/output as needed.

Thanks in advance to everyone that can help me.

Some updates: the process xdpyinfo runs in a single instance, not multiple.

I tried to kill it and the situation normalized: now even the X process is not eating all my CPU. It seems that the system is stable even without running that process, I haven’t noticed any other problems tied ti its killing.

What exactly is xdpyinfo, does it really need to start, and how can I prevent it to consume my system resources?

Update your system!

This sounds like https://bugzilla.opensuse.org/show_bug.cgi?id=1073996, which should be fixed in the latest Tumbleweed snapshot.

Btw, “xdpyinfo” is just a tool to get information about the X display.
See “man xdpyinfo”.
The bug was not in xdpyinfo though, but in libxcb (which is used by other applications as well).

Thank you for the feedback.

My system is fully updated, I do it almost daily. I also tried to restart the machine to see if it would work, but the problems persists.

xdpyinfo is still running in loop, and even if I kill it, after a while it starts again.

Any other ideas? Should I open a bug report?

But did you do it today? The fix got released in the latest snapshot as I wrote.
Run “zypper dup” to see if there are updates.

Any other ideas? Should I open a bug report?

There already was/is one.
You could reopen it if it still doesn’t work.

But first, please post the exact version if libxcb1 you have installed:

rpm -qi libxcb1

Yes, I did it today. Tried to update one more time just now, Nothing to do. is what I get.
Here is the output for the rpm query:

~> rpm -qi libxcb1 
Name        : libxcb1
Version     : 1.12
Release     : 2.2
Architecture: x86_64
Install Date: mar 16 gen 2018 14:18:57 CET
Group       : System/Libraries
Size        : 166848
License     : MIT
Signature   : RSA/SHA256, gio 11 gen 2018 09:55:51 CET, Key ID b88b2fd43dbdc284
Source RPM  : libxcb-1.12-2.2.src.rpm
Build Date  : lun 11 dic 2017 13:00:00 CET
Build Host  : lamb13
Relocations : (not relocatable)
Packager    : https://bugs.opensuse.org
Vendor      : openSUSE
URL         : http://xcb.freedesktop.org/
Summary     : X11 core protocol C library
Description :
The X protocol C-language Binding (XCB) is a replacement for Xlib
featuring a small footprint, latency hiding, direct access to the
protocol, improved threading support, and extensibility.
Distribution: openSUSE Tumbleweed


~> LANG=C sudo zypper search -s libxcb1 
Loading repository data...
Reading installed packages...

S  | Name          | Type    | Version  | Arch   | Repository              
i+ | libxcb1       | package | 1.12-2.2 | x86_64 | openSUSE-Tumbleweed-Oss
v  | libxcb1       | package | 1.12-3.1 | i586   | openSUSE-Tumbleweed-Oss
   | libxcb1-32bit | package | 1.12-3.1 | x86_64 | openSUSE-Tumbleweed-Oss

It seems that there is a newer version than the one on my system, but with a different architecture. Could it be that the packages are still building?


But for some reason, the 64bit 1.12-3.1 is not in the repo yet although it is built successfully (and 1.12-2.2 doesn’t contain the fix yet).
I see in the build history that it only got built yesterday, maybe that’s the reason (i.e. it wasn’t ready in time for this snapshot apparently).
Should be in the next snapshot then…

If you cannot wait, you could install the fixed version from the [noparse]X11:XOrg[/noparse] repo for now.

Although, I suppose killing that xdpyinfo process should be an acceptable workaround as well (for one or two days).

Yes, I can wait, if the fix is on its way to be released.

It is a minor annoyance and for now I can rely on killing it when it starts.

Thank you for your support!

After one of the latest updates, this problem was definitely solved.

Thanks everyone!