GNOME ScreenSaver service running twice causing duplicate dbus signals

Bug #2092587 reported by PabloRQ
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gnome-settings-daemon (Ubuntu)
New
Undecided
Unassigned

Bug Description

The GNOME ScreenSaver service appears to be running in duplicate, causing multiple dbus signals to be sent for the same screensaver events. One instance is properly identified as running under gnome-shell (sender :1.91), while another instance (sender :1.35) is running from an unknown source.

Steps to reproduce:
- Start a normal GNOME session
- Monitor screensaver dbus signals using: dbus-monitor "interface=org.gnome.ScreenSaver"
- Lock the screen or wait for screensaver to activate

Current behavior:
- Two separate ScreenSaver services are active simultaneously
- Both services respond to screensaver events
- Both services send duplicate dbus signals for:
  - ActiveChanged (true/false)
  - WakeUpScreen
- One service is properly identified (sender :1.91, PID 5175, gnome-shell)
- The other service (sender :1.35) appears as unknown in busctl

System logs:
```
$ journalctl -b | grep -i saver
dic 27 09:19:07 Han systemd[4827]: Starting org.gnome.SettingsDaemon.ScreensaverProxy.service...
dic 27 09:19:07 Han systemd[4827]: Started org.gnome.SettingsDaemon.ScreensaverProxy.service...
```

Expected behavior:
Only one instance of the ScreenSaver service should be running and handling screensaver events.

Additional Information:
- The duplicate service interferes with normal screensaver operation
- The unknown sender (:1.35) doesn't appear in busctl listing, suggesting a potential issue with service registration or cleanup

Environment:
- Ubuntu 24.10
- GNOME 47
- Wayland session

Some tests done:
```
$ journalctl -b | grep -i saver
dic 27 09:18:50 Han /usr/libexec/gdm-wayland-session[3573]: dbus-daemon[3573]: [session uid=120 pid=3573] Activating service name='org.gnome.ScreenSaver' requested by ':1.20' (uid=120 pid=3966 comm="/usr/libexec/gsd-power" label="unconfined")
dic 27 09:18:50 Han /usr/libexec/gdm-wayland-session[3573]: dbus-daemon[3573]: [session uid=120 pid=3573] Successfully activated service 'org.gnome.ScreenSaver'
dic 27 09:19:07 Han systemd[4827]: Starting org.gnome.SettingsDaemon.ScreensaverProxy.service - GNOME FreeDesktop screensaver service...
dic 27 09:19:07 Han systemd[4827]: Started org.gnome.SettingsDaemon.ScreensaverProxy.service - GNOME FreeDesktop screensaver service.
dic 27 09:19:07 Han systemd[4827]: Reached target org.gnome.SettingsDaemon.ScreensaverProxy.target - GNOME FreeDesktop screensaver target.
dic 27 09:19:10 Han dbus-daemon[4876]: [session uid=1000 pid=4876] Activating service name='org.gnome.ScreenSaver' requested by ':1.52' (uid=1000 pid=5454 comm="/usr/libexec/gsd-power" label="unconfined")
dic 27 09:19:10 Han dbus-daemon[4876]: [session uid=1000 pid=4876] Successfully activated service 'org.gnome.ScreenSaver'

$ dbus-monitor "interface=org.gnome.ScreenSaver"
signal time=1735300811.982973 sender=org.freedesktop.DBus -> destination=:1.325 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.325"
signal time=1735300811.983067 sender=org.freedesktop.DBus -> destination=:1.325 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.325"
method call time=1735300846.695768 sender=:1.60 -> destination=:1.91 serial=113 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=Lock
method call time=1735300846.698965 sender=:1.91 -> destination=:1.35 serial=114 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=Lock
signal time=1735300848.987671 sender=:1.35 -> destination=(null destination) serial=20515 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=ActiveChanged
   boolean true
signal time=1735300848.988992 sender=:1.91 -> destination=(null destination) serial=115 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=ActiveChanged
   boolean true
signal time=1735300880.504580 sender=:1.35 -> destination=(null destination) serial=20569 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=WakeUpScreen
signal time=1735300880.506064 sender=:1.91 -> destination=(null destination) serial=117 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=WakeUpScreen
signal time=1735300883.033599 sender=:1.35 -> destination=(null destination) serial=21516 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=ActiveChanged
   boolean false
signal time=1735300883.034911 sender=:1.91 -> destination=(null destination) serial=122 path=/org/gnome/ScreenSaver; interface=org.gnome.ScreenSaver; member=ActiveChanged
   boolean false

$ busctl | grep 1.91
:1.91 5175 gnome-shell [username] :1.91 user@1000.service - -
$ busctl | grep 1.35
(none)
```

ProblemType: Bug
DistroRelease: Ubuntu 24.10
Package: gnome-settings-daemon 47.1-1ubuntu1
ProcVersionSignature: Ubuntu 6.11.0-13.14-generic 6.11.0
Uname: Linux 6.11.0-13-generic x86_64
ApportVersion: 2.30.0-0ubuntu4
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
Date: Fri Dec 27 16:31:26 2024
InstallationDate: Installed on 2023-06-04 (572 days ago)
InstallationMedia: Ubuntu 23.04 "Lunar Lobster" - Release amd64 (20230418)
SourcePackage: gnome-settings-daemon
UpgradeStatus: Upgraded to oracular on 2024-12-17 (10 days ago)

Revision history for this message
PabloRQ (pablo-romeroquinteros) wrote :
Revision history for this message
PabloRQ (pablo-romeroquinteros) wrote :

More info:
```
$ ps -ef | grep -i saver
user 5469 4827 0 09:19 ? 00:00:00 /usr/libexec/gsd-screensaver-proxy
user 6289 4827 0 09:19 ? 00:00:00 /usr/bin/gjs -m /usr/share/gnome-shell/org.gnome.ScreenSaver
```

Revision history for this message
PabloRQ (pablo-romeroquinteros) wrote :

Oh! I have to mention that I've realized of this behavior after upgrading from Ubuntu 24.04 to Ubuntu 24.10.

In the previous version (Ubuntu 24.04) I haven't noticed about it, so I don't know if this is a new bug or an old one.

But now this bug seems to be affecting the default audio selection when the screen is locked (screensaver), switching to a different one instead of keeping the selected one.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.