Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 553996 - x11-misc/sddm fails to start on boot with KDE
Summary: x11-misc/sddm fails to start on boot with KDE
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Jauhien Piatlicki (RETIRED)
URL: https://github.com/sddm/sddm/issues/412
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-05 16:17 UTC by Lorenzo Porta (Vindex17)
Modified: 2017-05-13 20:48 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lorenzo Porta (Vindex17) 2015-07-05 16:17:35 UTC
SDDM leaves a blank screen on boot. This is what journald reports:

lug 05 17:38:27 pc-gentoo sddm[355]: Initializing...
lug 05 17:38:27 pc-gentoo sddm[355]: Starting...
lug 05 17:38:27 pc-gentoo sddm[355]: Adding new display 0 on vt 1 ...
lug 05 17:38:27 pc-gentoo sddm[355]: Adding cookie to "/var/run/sddm/:0"
lug 05 17:38:27 pc-gentoo sddm[355]: Display server starting...
lug 05 17:38:27 pc-gentoo sddm[355]: Running: /usr/bin/X :0 -auth /var/run/sddm/:0 -nolisten tcp -background none -noreset vt1
lug 05 17:38:27 PC-Gentoo sddm[355]: Signal received: SIGUSR1
lug 05 17:38:27 PC-Gentoo sddm[355]: Running display setup script  "/usr/share/sddm/scripts/Xsetup"
lug 05 17:38:27 PC-Gentoo sddm[355]: Display server started.
lug 05 17:38:27 PC-Gentoo sddm[355]: Socket server starting...
lug 05 17:38:27 PC-Gentoo sddm[355]: Socket server started.
lug 05 17:38:27 PC-Gentoo sddm[355]: Greeter starting...
lug 05 17:38:27 PC-Gentoo sddm-helper[378]: [PAM] Starting...
lug 05 17:38:27 PC-Gentoo sddm-helper[378]: [PAM] Authenticating...
lug 05 17:38:27 PC-Gentoo sddm-helper[378]: [PAM] returning.
lug 05 17:38:27 PC-Gentoo sddm-helper[378]: pam_unix(sddm-greeter:session): session opened for user sddm by (uid=0)
lug 05 17:38:27 PC-Gentoo systemd-logind[352]: New session c1 of user sddm.
lug 05 17:38:27 PC-Gentoo systemd[1]: Started Session c1 of user sddm.
lug 05 17:38:27 PC-Gentoo systemd[1]: Starting Session c1 of user sddm.
lug 05 17:38:27 PC-Gentoo systemd[379]: pam_unix(systemd-user:session): session opened for user sddm by (uid=0)
lug 05 17:38:27 PC-Gentoo sddm[355]: Greeter session started successfully
lug 05 17:38:27 PC-Gentoo sddm-greeter[382]: QXcbConnection: Could not connect to display :0
lug 05 17:38:27 PC-Gentoo sddm-helper[378]: [PAM] Ended.
lug 05 17:38:27 PC-Gentoo sddm[355]: Auth: sddm-helper exited with 6
lug 05 17:38:27 PC-Gentoo sddm[355]: Greeter stopped.


Reproducible: Always

Steps to Reproduce:
1. Enable sddm.service
2. (Re)boot

Actual Results:  
Blank screen

Expected Results:  
SDDM login screen

Annoying workaround:

1) Boot
2) Switch to tty2
3) systemctl restart sddm

(Every time...)

GDM works, KDM too (but I must have sddm for Plasma 5).

On other distros (i.e. openSUSE and Fedora) SDDM works (same machine of course)
Comment 1 Lorenzo Porta (Vindex17) 2015-07-05 16:19:39 UTC
# emerge --info
Portage 2.2.20 (python 3.3.5-final-0, default/linux/amd64/13.0/desktop/plasma/systemd, gcc-4.9.3, glibc-2.20-r2, 4.1.1-gentoo-r1 x86_64)
=================================================================
System uname: Linux-4.1.1-gentoo-r1-x86_64-AMD_FX-tm-8150_Eight-Core_Processor-with-gentoo-2.2
KiB Mem:     8107860 total,   6608360 free
KiB Swap:   16779260 total,  16779260 free
Timestamp of repository gentoo: Sun, 05 Jul 2015 14:45:01 +0000
sh bash 4.3_p39
ld ld di GNU (Gentoo 2.25 p1.2) 2.25
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2-r1::gentoo
dev-lang/python:          2.7.10::gentoo, 3.3.5-r1::gentoo
dev-util/cmake:           3.2.3::gentoo
dev-util/pkgconfig:       0.28-r3::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25-r1::gentoo
sys-devel/gcc:            4.9.3::gentoo
sys-devel/gcc-config:     1.8::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.20-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://gentoo.mirror.garr.it/gentoo-portage
    priority: -1000

local-overlay
    location: /home/lorenzo/local-overlay
    masters: gentoo

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--quiet-build=y --with-bdeps=y"
FCFLAGS="-march=native -O2"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2"
GENTOO_MIRRORS="http://gentoo.mirror.garr.it/mirrors/gentoo/"
LANG="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/tmp"
USE="X a52 aac acl acpi alsa amd64 atm bash-completion berkdb bluetooth bluray branding btrfs bzip2 cairo cdda cddb cdr cli cmake cracklib crypt cryptsetup css cups cxx dbus declarative designer dri dts dvd dvdr emboss encode exif fam fat ffmpeg fftw firefox firmware flac fontconfig fortran gdbm geoip gif git glamor gpm gtk hddtemp iconv icu inotify ipc ipv6 java jit jpeg kde kipi lcms ldap libass libnotify lm_sensors lto mad matroska mhash mmx mmxext mng modules mp3 mp4 mpeg mtp multilib ncurses networkmanager nls nptl ntfs ofa offensive ogg opengl openmp pam pango pch pcre pdf phonon plasma png policykit postproc ppds pulseaudio qml qt3support qt5 rdesktop rdp readline sasl scanner sdl semantic-desktop session smp spell sse sse2 ssl startup-notification svg symlink systemd tcpd threads tiff truetype udev udisks unicode upower usb vdpau vnc vorbis vpx widgets wxwidgets x264 xattr xcb xcomposite xinerama xkb xml xscreensaver xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon words" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="it" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="r600 radeon" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

x11-misc/sddm-0.11.0-r1::gentoo was built with the following:
USE="systemd (-consolekit) -upower" ABI_X86="64"
Comment 2 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-07-05 17:22:53 UTC
@Lorenzo Porta (Vindex17):

Let's start trying to find the reason. I would ask you to look if delay in starting sddm helps. Do this:

Create a unit file:

[Unit]
Description=Start sddm service fixed time after boot

[Timer]
OnStartupSec=20
Unit=sddm.service

[Install]
WantedBy=multi-user.target

Then do:

systemctl disable sddm.service
systemctl enable sddm.timer

Taken from: https://bbs.archlinux.org/viewtopic.php?id=189145

And, please, tell here if sddm starts to work after this. In meanwhile I will ask somebody, who has amd64 hardware and KDE, to try to reproduce your bug.
Comment 3 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-07-05 18:03:04 UTC
@KDE herd, could you give more input on this? How does sddm work for you? Thanks.
Comment 4 Lorenzo Porta (Vindex17) 2015-07-05 18:40:55 UTC
(In reply to Jauhien Piatlicki from comment #2)

Yes, delaying sddm startup makes it work
Comment 5 Johannes Huber (RETIRED) gentoo-dev 2015-07-05 20:59:47 UTC
@Jauhien never had this issue with my machine
Comment 6 Manuel Rüger (RETIRED) gentoo-dev 2015-07-05 21:23:42 UTC
Do you have any non-standard systemd settings? If delaying helps, a kernel driver or whatever might be loaded too late by systemd?
Comment 7 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-07-05 21:58:53 UTC
@Johannes: thanks

@Lorenzo:

please, try to figure out from logs what loads during this delay and allows you to start sddm properly. Also, please, consider filling an upstream bug (https://github.com/sddm/sddm/issues): may be upstream will faster figure out what's wrong.
Comment 8 Lorenzo Porta (Vindex17) 2015-07-08 14:16:01 UTC
After emerging kde-plasma/plasma-meta sddm has started to work, yet showing some new errors:


lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject::installEventFilter(): Cannot filter events for objects in a different thread.
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject: Cannot create children for a parent that is in a different thread.
                                             (Parent is SDDM::GreeterApp(0x7ffe2ba992a0), parent's thread is QThread(0xa0ae60), current thread is QThread(0xb87b50)
lug 08 08:55:44 pc-gentoo sddm-greeter[353]: QObject::installEventFilter(): Cannot filter events for objects in a different thread.
lug 08 08:55:45 pc-gentoo sddm-greeter[353]: file:///usr/share/sddm/themes/breeze/components/InfoPane.qml:52:22: Unable to assign [undefined] to int
lug 08 08:55:45 pc-gentoo sddm-greeter[353]: QDBusConnection: name 'org.freedesktop.UDisks2' had owner '' but we thought it was ':1.7'


I guess the ebuild misses some runtime dependency, since emerging only sddm requires a workaround to make it work
Comment 9 Lorenzo Porta (Vindex17) 2015-07-09 12:59:25 UTC
After other tests I found out that the problem was not about dependencies, but a stranger one... If I use NetworkManager.service, sddm does not start without delay. Instead, if I switch for example to systemd-networkd.service, sddm works...
Comment 10 Rafa Llandres 2015-08-11 22:35:25 UTC
Don't work for me.
After time passed, screen goes black.
Only start if I eselect Opengl to xorg-x11. I'm have Nvidia. I have tried 349.16 and 352.30 drivers
Error:
ago 12 00:13:46 localhost sddm-greeter[2321]: Failed to create OpenGL context for format QSurfaceFormat(version 2.0, options QFlags(), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBufferSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior 2, swapInterval 1, profile 0)
Comment 11 Rafa Llandres 2015-08-11 23:01:40 UTC
Now is working without timer.

I add sddm to video group and it is working
Comment 12 Johannes Huber (RETIRED) gentoo-dev 2015-08-18 19:50:05 UTC
(In reply to Rafa Llandres from comment #11)
> Now is working without timer.
> 
> I add sddm to video group and it is working

Maybe sddm should add sddm user to video group automatically. I heard this from several people on irc.
Comment 13 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-08-18 20:18:08 UTC
It was only suggested by upstream before, but may be it makes sense to add sddm to video group by default. I'll look at it closer and then change ebuild.
Comment 14 Robert Crawford 2015-08-27 20:09:51 UTC
I just went to plasma-5.4.0 on an up-to-date systemd ~x86 box, got sddm installed and configured, but still had this problem after getting sidetracked for hours researching QT, Xorg, sddm, logind, video drivers, other distro's solutions, etc... 

I could login as root after booting to a terminal, and only doing a systemctl start sddm.service would bring up the greeter, and then I logged into kde OK. Once I got to the greeter and logged in to a user, sddm works great.  

Anyway, for me, adding sddm to the video group didn't work, but finally creating the sddm.timer unit file in comment #2, it did work, as advertised. Obviously the 29 sec. delay allows the greeter to come up.

FWIW, from the xorg log:

71.294] (EE) systemd-logind: failed to get session: PID 431 does not belong to any known session

Aug 27 10:20:28 gentoo-audio kwin_x11[542]: QMetaMethod::invoke: Unable to handle unregistered datatype 'KWin::EffectWindow*'
Aug 27 10:20:28 gentoo-audio kwin_x11[542]: QXcbConnection: XCB error: 3 (BadWindow), sequence: 822, resource id: 48234501, major c
Comment 15 Lorenzo Porta (Vindex17) 2015-09-07 10:56:52 UTC
https://github.com/gentoo/qt/pull/105

This should fix all problems of this type (on my machine it does)
Comment 16 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-09-07 12:48:12 UTC
Please, do not close bug until tested fix is in the tree.
Comment 17 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-09-12 22:23:47 UTC
@Lorenzo Porta: thank you, new version is in the tree. Closing, please, reopen is problem emerges again.
Comment 18 Anton Gubarkov 2015-10-19 16:10:59 UTC
(In reply to Jauhien Piatlicki from comment #13)
> It was only suggested by upstream before, but may be it makes sense to add
> sddm to video group by default. I'll look at it closer and then change
> ebuild.

Adding sddm user to video group fixed the black screen problem for me.
Comment 19 Jauhien Piatlicki (RETIRED) gentoo-dev 2015-10-19 20:25:07 UTC
(In reply to Anton Gubarkov from comment #18)
> (In reply to Jauhien Piatlicki from comment #13)
> > It was only suggested by upstream before, but may be it makes sense to add
> > sddm to video group by default. I'll look at it closer and then change
> > ebuild.
> 
> Adding sddm user to video group fixed the black screen problem for me.

It is added by ebuild now, but it works only when no such user existed before (if I understand this ebuild stuff correctly, may be I'm wrong here). Anyway ebuild is fixed already and if for whatever reason sddm user was not in the video group, you should add it (as you did). And thanks for confirmation that this works.