kdeinit freezes on Wayland in OOM protection

Martin Graesslin mgraesslin at kde.org
Thu Nov 26 12:16:04 UTC 2015


Hi all,

we are facing a problem during the startup of Plasma on Wayland. If OOM 
protection is enabled for kdeinit and we already have a running X server, 
kdeinit freezes dead.

I'm sorry for having ignored the issue for too long and had just disabled OOM 
protection on my system, so I never hit it. Now I enabled it again to get the 
problem. On my system I have now two frozen kdeinit processes:

martin    1960  1956  0 77832 26448   1 13:05 ?        00:00:00 /opt/kf5/bin/
kdeinit5 --oom-pipe 4 --kded +kcminit_startup
martin    1961  1960  0 77832  2816   3 13:05 ?        00:00:00 /opt/kf5/bin/
kdeinit5 --oom-pipe 4 --kded +kcminit_startup

One has the following stacktrace:
#0  0x00007f2bbd812446 in do_sigsuspend (set=0x7ffc9d6f7b80) at ../sysdeps/
unix/sysv/linux/sigsuspend.c:31
#1  __GI___sigsuspend (set=0x7ffc9d6f7b80) at ../sysdeps/unix/sysv/linux/
sigsuspend.c:41
#2  0x000000000040af7a in reset_oom_protect () at /home/martin/src/kf5/
frameworks/kinit/src/kdeinit/kinit.cpp:461
#3  0x000000000040b85c in launch (argc=2, _name=0x4133cd "klauncher", 
args=0x7ffc9d6f8210 "--fd=9", cwd=0x0, envc=0, envs=0x0, reset_env=false, 
tty=0x0, avoid_loops=false, startup_id_str=0x4133d7 "0")
    at /home/martin/src/kf5/frameworks/kinit/src/kdeinit/kinit.cpp:573
#4  0x000000000040ce49 in start_klauncher () at /home/martin/src/kf5/
frameworks/kinit/src/kdeinit/kinit.cpp:1033
#5  0x000000000040f0f3 in main (argc=5, argv=0x7ffc9d6f83f8) at /home/martin/
src/kf5/frameworks/kinit/src/kdeinit/kinit.cpp:1792

It's frozen in this line of code:
sigsuspend(&oldsigs);   // wait for the signal to come

The other one has the following stacktrace:
#0  0x00007f2bbd8b65e0 in __read_nocancel () at ../sysdeps/unix/syscall-
template.S:81
#1  0x000000000040c33b in launch (argc=2, _name=0x4133cd "klauncher", 
args=0x7ffc9d6f8210 "--fd=9", cwd=0x0, envc=0, envs=0x0, reset_env=false, 
tty=0x0, avoid_loops=false, startup_id_str=0x4133d7 "0")
    at /home/martin/src/kf5/frameworks/kinit/src/kdeinit/kinit.cpp:754
#2  0x000000000040ce49 in start_klauncher () at /home/martin/src/kf5/
frameworks/kinit/src/kdeinit/kinit.cpp:1033
#3  0x000000000040f0f3 in main (argc=5, argv=0x7ffc9d6f83f8) at /home/martin/
src/kf5/frameworks/kinit/src/kdeinit/kinit.cpp:1792

which is:
d.n = read(d.fd[0], &d.result, 1);

Given that it looks to me like these two processes dead-lock. I do not 
understand why, why it only happens on Wayland, why the fact that an X server 
must already be running is relevant and what the OOM protection has to do with 
it.

Any advise is welcome.

Cheers
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20151126/2955abdd/attachment.sig>


More information about the Kde-frameworks-devel mailing list