gnome-shell 45.0: changing keyboard backlight via hotkey causes freezes, log flood
Affected version
gnome-shell 45.0
Bug summary
If the hardware changes the state of the keyboard backlight, (e.g. toggling it via hotkeys or resetting it across reboots) gnome-shell freezes for a few seconds, floods the system log with warnings and CPU usage spikes. In case of a change across reboots, GDM becomes completely unresponsive, requiring me to switch TTY, stop gdm.service, switch off the backlight and start GDM again.
Steps to reproduce
Use the keyboard hotkeys to toggle keyboard backlight multiple times in a row.
What happened
The entire UI becomes unresponsive for a few seconds (except for the cursor) and CPU usage spikes.
stack trace:
Sep 17 11:18:39 gentoo-coreboot gnome-shell[1669]: Attempting to call back into JSAPI during the sweeping phase of GC. This is most likely caused by not destroying a Clutter actor or Gtk+ w>
The offending signal was notify on Gjs_status_backlight_SliderItem 0x55a0b9cef280.
== Stack trace for context 0x55a0b72f4b90 ==
#0 7fff15980990 I resource:///org/gnome/shell/ui/status/backlight.js:57 (25351f727740 @ 131)
#1 7fff159811d0 b resource:///org/gnome/gjs/modules/core/overrides/GObject.js:687 (3509d109bec0 @ 25)
#2 7fff15981210 I resource:///org/gnome/shell/ui/status/backlight.js:197 (25351f727c90 @ 199)
#3 7fff15981240 I resource:///org/gnome/shell/ui/status/backlight.js:157 (25351f727b50 @ 12)
#4 55a0b73bb5e8 i resource:///org/gnome/shell/ui/init.js:21 (3509d1070ba0 @ 48)
Sep 17 11:18:39 gentoo-coreboot gnome-shell[1669]: Attempting to run a JS callback during garbage collection. This is most likely caused by destroying a Clutter actor or GTK widget with ::d>
The offending callback was AsyncReadyCallback().
== Stack trace for context 0x55a0b72f4b90 ==
#0 55a0b73bb5e8 i resource:///org/gnome/shell/ui/init.js:21 (3509d1070ba0 @ 48)
Sep 17 11:18:39 gentoo-coreboot gnome-shell[1669]: Attempting to call back into JSAPI during the sweeping phase of GC. This is most likely caused by not destroying a Clutter actor or Gtk+ w>
The offending signal was g-properties-changed on GDBusProxy 0x55a0b9cea530.
== Stack trace for context 0x55a0b72f4b90 ==
#0 55a0b73bb5e8 i resource:///org/gnome/shell/ui/init.js:21 (3509d1070ba0 @ 48)
the last two messages repeat more than 10,000x
What did you expect to happen
Gnome-shell should handle keyboard brightness changes without freezing the UI.
Edited by Johannes Penßel