unity session without window decorations, panel and launcher

Bug #1756585 reported by Dieter Maurer
24
This bug affects 4 people
Affects Status Importance Assigned to Milestone
unity (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

After today's update, the unity session after user login lacks window decorations, panel and launcher. The only things correctly set up are the background and the "auto-start" application windows (however, those lack window decorations and do not present their menues).

Today's unity related updates have been:
 unity-schemas:i386 (7.4.0+16.04.20160906-0ubuntu1, 7.4.5+16.04.20180221-0ubuntu1),
 compiz-plugins-default:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16 compiz-plugins:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 compiz-plugins-main-default:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 compizconfig-settings-manager:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 unity:i386 (7.4.0+16.04.20160906-0ubuntu1, 7.4.5+16.04.20180221-0ubuntu1),
 unity-services:i386 (7.4.0+16.04.20160906-0ubuntu1, 7.4.5+16.04.20180221-0ubuntu1),
 compiz-gnome:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 libcompizconfig0:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 compiz:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 python-compizconfig:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 compiz-core:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1),
 compiz-plugins-main:i386 (1:0.9.12.2+16.04.20160823-0ubuntu1, 1:0.9.12.3+16.04.20180221-0ubuntu1)

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: unity 7.4.5+16.04.20180221-0ubuntu1
ProcVersionSignature: Ubuntu 4.4.0-116.140-generic 4.4.98
Uname: Linux 4.4.0-116-generic i686
.tmp.unity_support_test.0:

ApportVersion: 2.20.1-0ubuntu2.15
Architecture: i386
CompizPlugins: [core,bailer,detection,composite,opengl,compiztoolbox,decor,move,resize,snap,place,grid,vpswitch,gnomecompat,mousepoll,imgpng,session,regex,animation,unitymtgrabhandles,workarounds,wall,fade,expo,ezoom,scale,unityshell]
CompositorRunning: None
CurrentDesktop: Unity
Date: Sat Mar 17 20:18:19 2018
DistUpgraded: 2016-12-12 17:25:47,166 DEBUG Running PostInstallScript: './xorg_fix_proprietary.py'
DistroCodename: xenial
DistroVariant: ubuntu
GraphicsCard:
 NVIDIA Corporation C61 [GeForce 7025 / nForce 630a] [10de:03d6] (rev a2) (prog-if 00 [VGA controller])
   Subsystem: ASRock Incorporation C61 [GeForce 7025 / nForce 630a] [1849:03d6]
InstallationDate: Installed on 2013-01-21 (1881 days ago)
InstallationMedia: Ubuntu 12.04.1 LTS "Precise Pangolin" - Release i386 (20120817.3)
Lsusb:
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: To Be Filled By O.E.M. To Be Filled By O.E.M.
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-116-generic root=UUID=9c03cebc-9cba-47bc-9974-5c236a34906e ro nouveau.config=NvMSI=0
SourcePackage: unity
UpgradeStatus: Upgraded to xenial on 2016-12-12 (460 days ago)
dmi.bios.date: 05/27/2010
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: P1.30
dmi.board.name: N68-S3 UCC
dmi.board.vendor: ASRock
dmi.chassis.asset.tag: To Be Filled By O.E.M.
dmi.chassis.type: 3
dmi.chassis.vendor: To Be Filled By O.E.M.
dmi.chassis.version: To Be Filled By O.E.M.
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrP1.30:bd05/27/2010:svnToBeFilledByO.E.M.:pnToBeFilledByO.E.M.:pvrToBeFilledByO.E.M.:rvnASRock:rnN68-S3UCC:rvr:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:
dmi.product.name: To Be Filled By O.E.M.
dmi.product.version: To Be Filled By O.E.M.
dmi.sys.vendor: To Be Filled By O.E.M.
version.compiz: compiz 1:0.9.12.3+16.04.20180221-0ubuntu1
version.libdrm2: libdrm2 2.4.83-1~16.04.1
version.libgl1-mesa-dri: libgl1-mesa-dri 17.2.8-0ubuntu0~16.04.1
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 17.2.8-0ubuntu0~16.04.1
version.xserver-xorg-core: xserver-xorg-core 2:1.18.4-0ubuntu0.7
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.10.1-1ubuntu2
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:7.7.0-1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.917+git20160325-1ubuntu1.2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.12-1build2
xserver.bootTime: Sat Mar 17 19:24:20 2018
xserver.configfile: default
xserver.devices:
 input Power Button KEYBOARD, id 6
 input Power Button KEYBOARD, id 7
 input AT Translated Set 2 keyboard KEYBOARD, id 8
 input ImPS/2 Logitech Wheel Mouse MOUSE, id 9
xserver.errors:
 Failed to load module "nvidia" (module does not exist, 0)
 Failed to load module "nvidia" (module does not exist, 0)
xserver.logfile: /var/log/Xorg.0.log
xserver.version: 2:1.18.4-0ubuntu0.7
xserver.video_driver: nouveau

Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :

Downgrading of the above packages from "xenial-updates" to "xenial" has not solved the problem. Further analysis is for the "xenial-updates" versions.

At the beginning of the "unity session", "top" reveals a very high CPU (and disk) usage by "dconf-service". Apparently, it is used by "compiz-config-profile-setter unity". Today's trials ended with an "unexpected termination" of this program. Starting it "by hand" gives:

./compiz-config-profile-setter unity
compizconfig - Info: Backend : gsettings
compizconfig - Info: Integration : true
compizconfig - Info: Profile : unity-lowgfx

(process:6560): GLib-GIO-WARNING **: g_settings_set_value: value for key 'visual-bell-type' in schema 'org.gnome.desktop.wm.preferences' is outside of valid range
Switched to profile 'unity' (for environment 'ubuntu')
compizconfig - Info: Backend : gsettings
compizconfig - Info: Integration : true
compizconfig - Info: Profile : unity
compizconfig - Error: Unable to find interface type 3 on 0x82e6408
This is either a programmer error or more than one static library
defining this interface has been linked in
Unable to continue, please file a bug about this
Abgebrochen (Speicherabzug geschrieben)

Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :

Bug may be related to https://bugs.launchpad.net/ubuntu/+source/at-spi2-core/+bug/1285444

There the content of ".xsession.errors" was requested:

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity (Ubuntu):
status: New → Confirmed
Revision history for this message
Laetitia (delabruyne) wrote :

I'm not sure if it's related, but when I log in with another account (regular or administrator type), the problem doesn't appear.
Same thing if I create another account.
In my case, this bug concerns only the primary account.

Revision history for this message
Dieter Maurer (d.maurer) wrote :

If I create a new user, "unity" starts fine (for this user).

This implies that the problem depends on the configuration of an old user (created under Ubuntu 12.04).
"https://askubuntu.com/questions/17381/unity-doesnt-load-no-launcher-no-dash-appears/" suggested to fix the problem by "dconf reset -f /org/compiz". This did not change anything for me. Neither allowed removing "~/.config/dconf/user" a successful unity start.

I will now try to find important differences in the configuration for the old and the new user.

Revision history for this message
Laetitia (delabruyne) wrote :

I can get back my compiz config with 'setsid compiz --replace' BUT everything is lost again after reboot...

Revision history for this message
Dieter Maurer (d.maurer) wrote :

I have compared the "syslog" messages for a failing ("unity" startup fails) and a successful ("unity" startup correct) login. There are some differences. But for me, they do not seem critical: in the failing case, apparently, someone tries to start a "bamfdaemon" which is already running; in the succeeding case, there is not such message. The cases are slightly different with respect to the services started ("udisk2.service" versus "fwupd.service"/"unity-fallback-mount-helper"). The failing case seems to have problems with "nautilus"; the succeeding one with the "gnome-screensaver".

I will attach the files "ok.activity", "fail.activity" and "diff.activity", showing edited versions of the syslog entries for the failing, the succeeding case and the difference succeeding->failing, respectively.

Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :
Revision history for this message
Dieter Maurer (d.maurer) wrote :

"unity" starts again successfully. Unfortunately, I do not why.

What I did:
I noticed that in "~/.cache.upstart.unity7.log" I saw
compizconfig - Info: Backend : gsettings
compizconfig - Info: Integration : true
compizconfig - Info: Profile : unity-lowgfx

The "unity-lowgfx" surprized me. Thus, I replaced the "set -e" in "/usr/lib/i386-linux-gnu/unity/compiz-profile-selector" by "set -evx". This resulted in "unity7.log" in:
...
/usr/lib/i386-linux-gnu/unity/compiz-config-profile-setter $settings_profile
+ /usr/lib/i386-linux-gnu/unity/compiz-config-profile-setter unity
compizconfig - Info: Backend : gsettings
compizconfig - Info: Integration : true
compizconfig - Info: Profile : unity-lowgfx

(process:9252): GLib-GIO-WARNING **: g_settings_set_value: value for key 'visual-bell-type' in schema 'org.gnome.desktop.wm.preferences' is outside of valid range
Switched to profile 'unity' (for environment 'ubuntu')
compizconfig - Info: Backend : gsettings
compizconfig - Info: Integration : true
compizconfig - Info: Profile : unity
/usr/lib/i386-linux-gnu/unity/compiz-profile-selector: Zeile 48: 9252 Speicherzugriffsfehler (Speicherabzug geschrieben) /usr/lib/i386-linux-gnu/unity/compiz-config-profile-setter $settings_profile

This means, that for some reason I have previously used the "unity-lowgfx" profile. I forced "settings_profile=unity" in "/usr/lib/i386-linux-gnu/unity/compiz-profile-selector", restarted the user session and "unity" was back again. It also started much faster than ever in the past.

Apparently, part of my "DCONF" configuration has been reset (magically): the "unity" (and launcher) have now their default values. I will see soon what happens, when I restore the previous DCONF configuration.

I had also removed some no longer functioning "autostart" configurations and removed some broken "evolution" sources. I do not suppose that this was important.

Revision history for this message
Dieter Maurer (d.maurer) wrote :

The problem was caused by an old (created under Ubuntu 12.04) DCONF configuration (attached).

Apparently, there is code to reset such outdated configuration. In my case, however, "/usr/lib/i386-linux-gnu/unity/compiz-config-profile-setter" (usually) crashed (sometimes a SIGSEGV; sometimes the inability to find interface type 3) (for reasons not yet understood) and that code was not reached.

Workaround for this problem: copy over "~/.config/dconf/user" (i.e. the DCONF configuration) from a newly created user to the old user with this problem.
To be able to restore relevant configuration after the copying, you can save the old configuration with "dconf dump / > user-old.dump" in a readable form before the copying; after the copying "dconf dump / > user-new.dump" will give the new configuration in readable form which can be "diff"ed to the old configuration. "dconf set ..." can be used to restore relevant parts of the old configuration to the new one.

Revision history for this message
Dieter Maurer (d.maurer) wrote :

Small correction for comment "#18": the command to selectively restore a configuration option is "dconf write" (not "dconf set").

To post a comment you must log in.