gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background() from st_theme_node_paint_equal() from st_widget_recompute_style() from st_widget_style_changed() [when locking the screen] [usually due to dash-to-panel]

Bug #1877774 reported by Per-Inge on 2020-05-09
148
This bug affects 21 people
Affects Status Importance Assigned to Milestone
GNOME Shell
Unknown
Unknown
gnome-shell (Ubuntu)
High
Marco Trevisan (Treviño)
Focal
High
Marco Trevisan (Treviño)

Bug Description

[ Impact ]

GNOME shell crashes on extensions loading / updates

[ Test case ]
 - No clear test case, normally may happen during screen locking/unlocking
 - But crashes should be monitored at
   https://errors.ubuntu.com/problem/4127e7e714fd28c090da0220de2ff06e71274eda

[ Regression potential ]

Stylesheet memory could be leaked

---

Seems to be reproducible
Suspend the computer
Start the computer from suspend
Start chrome gmail.
Has happened two times

ProblemType: CrashDistroRelease: Ubuntu 20.10
Package: gnome-shell 3.36.2-1ubuntu1
ProcVersionSignature: Ubuntu 5.4.0-28.32-generic 5.4.30
Uname: Linux 5.4.0-28-generic x86_64
ApportVersion: 2.20.11-0ubuntu33
Architecture: amd64
CasperMD5CheckResult: skip
CrashCounter: 1
CurrentDesktop: ubuntu:GNOME
Date: Sat May 9 20:00:47 2020
DisplayManager: gdm3
ExecutablePath: /usr/bin/gnome-shell
InstallationDate: Installed on 2020-04-16 (23 days ago)
InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Beta amd64 (20200415.2)
ProcCmdline: /usr/bin/gnome-shell
RelatedPackageVersions: mutter-common 3.36.2-1ubuntu1
SegvAnalysis:
 Segfault happened at: 0x7fe1b40c4252 <_st_theme_node_ensure_background+226>: mov (%rax),%r12
 PC (0x7fe1b40c4252) ok
 source "(%rax)" (0x00000000) not located in a known VMA region (needed readable region)!
 destination "%r12" ok
SegvReason: reading NULL VMA
Signal: 11SourcePackage: gnome-shell
StacktraceTop:
 _st_theme_node_ensure_background () from /usr/lib/gnome-shell/libst-1.0.so
 st_theme_node_paint_equal () from /usr/lib/gnome-shell/libst-1.0.so
 ?? () from /usr/lib/gnome-shell/libst-1.0.so
 st_widget_style_changed () from /usr/lib/gnome-shell/libst-1.0.so
 ?? () from /usr/lib/gnome-shell/libst-1.0.so
Title: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
separator:

Per-Inge (per-inge-hallin) wrote :
Per-Inge (per-inge-hallin) wrote :

Probably the same as Bug 1877760

Per-Inge (per-inge-hallin) wrote :

Perhaps not the same as Bug 1877760.
Happens after suspend or return from suspend

StacktraceTop:
 _st_theme_node_ensure_background () from /tmp/apport_sandbox_f0akyblk/usr/lib/gnome-shell/libst-1.0.so
 st_theme_node_paint_equal () from /tmp/apport_sandbox_f0akyblk/usr/lib/gnome-shell/libst-1.0.so
 st_widget_recompute_style () from /tmp/apport_sandbox_f0akyblk/usr/lib/gnome-shell/libst-1.0.so
 st_widget_style_changed () from /tmp/apport_sandbox_f0akyblk/usr/lib/gnome-shell/libst-1.0.so
 notify_children_of_style_change () from /tmp/apport_sandbox_f0akyblk/usr/lib/gnome-shell/libst-1.0.so

Changed in gnome-shell (Ubuntu):
importance: Undecided → Medium
tags: removed: need-amd64-retrace
summary: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
+ when using dash-to-panel
Changed in gnome-shell (Ubuntu):
status: New → Fix Committed
importance: Medium → Low
tags: added: fixed-in-3.36.3 fixed-upstream
information type: Private → Public
Changed in gnome-shell-extension-dash-to-panel:
status: Unknown → Fix Released
tags: added: focal

Started Groovy Gorilla today and update. Suspend don't crash gnome-shell.
Perhaps "gnome-shell-extension-desktop-icons:amd64 (20.04.0-1, 20.04.0-2)"
fixed the problem.

Den ons 20 maj 2020 kl 19:30 skrev Per-Inge <email address hidden>:

> Used apport-cli to report and that worked. Marked the report as bug
> 1877774.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1877774
>
> Title:
> gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
> when using dash-to-panel
>
> Status in GNOME Shell:
> Unknown
> Status in Gnome Shell Extension Dash To Panel:
> Fix Released
> Status in gnome-shell package in Ubuntu:
> Fix Committed
>
> Bug description:
> Seems to be reproducible
> Suspend the computer
> Start the computer from suspend
> Start chrome gmail.
> Has happened two times
>
> ProblemType: Crash
> DistroRelease: Ubuntu 20.10
> Package: gnome-shell 3.36.2-1ubuntu1
> ProcVersionSignature: Ubuntu 5.4.0-28.32-generic 5.4.30
> Uname: Linux 5.4.0-28-generic x86_64
> ApportVersion: 2.20.11-0ubuntu33
> Architecture: amd64
> CasperMD5CheckResult: skip
> CrashCounter: 1
> CurrentDesktop: ubuntu:GNOME
> Date: Sat May 9 20:00:47 2020
> DisplayManager: gdm3
> ExecutablePath: /usr/bin/gnome-shell
> InstallationDate: Installed on 2020-04-16 (23 days ago)
> InstallationMedia: Ubuntu 20.04 LTS "Focal Fossa" - Beta amd64
> (20200415.2)
> ProcCmdline: /usr/bin/gnome-shell
> RelatedPackageVersions: mutter-common 3.36.2-1ubuntu1
> SegvAnalysis:
> Segfault happened at: 0x7fe1b40c4252
> <_st_theme_node_ensure_background+226>: mov (%rax),%r12
> PC (0x7fe1b40c4252) ok
> source "(%rax)" (0x00000000) not located in a known VMA region (needed
> readable region)!
> destination "%r12" ok
> SegvReason: reading NULL VMA
> Signal: 11
> SourcePackage: gnome-shell
> StacktraceTop:
> _st_theme_node_ensure_background () from /usr/lib/gnome-shell/
> libst-1.0.so
> st_theme_node_paint_equal () from /usr/lib/gnome-shell/libst-1.0.so
> ?? () from /usr/lib/gnome-shell/libst-1.0.so
> st_widget_style_changed () from /usr/lib/gnome-shell/libst-1.0.so
> ?? () from /usr/lib/gnome-shell/libst-1.0.so
> Title: gnome-shell crashed with SIGSEGV in
> _st_theme_node_ensure_background()
> UpgradeStatus: No upgrade log present (probably fresh install)
> UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
> separator:
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/gnome-shell/+bug/1877774/+subscriptions
>

--
Skickat från min nya mailadress

We don't need any more info. The fix for this bug is on the way, in gnome-shell 3.36.3.

no longer affects: gnome-shell-extension-dash-to-panel
Changed in gnome-shell (Ubuntu):
status: Fix Committed → Fix Released
Changed in gnome-shell (Ubuntu):
status: Fix Released → Fix Committed
summary: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
- when using dash-to-panel
+ from st_theme_node_paint_equal() from st_widget_recompute_style() from
+ st_widget_style_changed()
summary: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
from st_theme_node_paint_equal() from st_widget_recompute_style() from
- st_widget_style_changed()
+ st_widget_style_changed() [usually with the dash-to-panel extension]
description: updated
summary: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
from st_theme_node_paint_equal() from st_widget_recompute_style() from
- st_widget_style_changed() [usually with the dash-to-panel extension]
+ st_widget_style_changed() [when locking the screen]
description: updated
Changed in gnome-shell (Ubuntu Focal):
importance: Undecided → High
status: New → In Progress
Changed in gnome-shell (Ubuntu):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Changed in gnome-shell (Ubuntu Focal):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-shell - 3.36.3-1ubuntu2

---------------
gnome-shell (3.36.3-1ubuntu2) groovy; urgency=medium

  * d/p/shell-mime-sniffer-Ignore-invalid-file-content-type.patch:
    - gnome-shell-sniffer, don't crash when opening files with invalid content
      type (LP: #1865300)

 -- Marco Trevisan (Treviño) <email address hidden> Fri, 05 Jun 2020 20:14:47 +0200

Changed in gnome-shell (Ubuntu):
status: Fix Committed → Fix Released
Paweł Babilas (p-babilas) wrote :

When it gets into focal? Today I'cant lock my screen, it always crash :(

Daniel van Vugt (vanvugt) wrote :

Try removing your extensions. The crash generally seems to happen for people who are using non-Ubuntu extensions.

Slavo Roikhel (slavoroi) wrote :

So with your tip, I disabled all my extensions until I found Dash To panel extension:
https://extensions.gnome.org/extension/1160/dash-to-panel/

When disabling it doesn't crash.

Daniel van Vugt (vanvugt) wrote :

Yes that's what the upstream bug for this bug says:
https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2709

But I expect Ubuntu 20.04 will get the fix soon.

Paweł Babilas (p-babilas) wrote :

Oh no my favourite ext must go off :( Thanks for tip!

summary: gnome-shell crashed with SIGSEGV in _st_theme_node_ensure_background()
from st_theme_node_paint_equal() from st_widget_recompute_style() from
- st_widget_style_changed() [when locking the screen]
+ st_widget_style_changed() [when locking the screen] [usually due to
+ dash-to-panel]

Hello Per-Inge, or anyone else affected,

Accepted gnome-shell into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/gnome-shell/3.36.3-1ubuntu1~20.04.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in gnome-shell (Ubuntu Focal):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-focal
JP (jptech) wrote :

Hello,

will you solve the problem in Ubuntu 18.04.4 LTS too ?

Gnome crashes when I lock my screen with gnome-shell 3.28.4.
I have "dash to panel" extension on this computer too.

hs (h.s.) wrote :

The package gnome-shell 3.36.3-1ubuntu1~20.04.2 (and gnome-shell-common) fixed the bug for me.

On the previous version 3.36.2-1ubuntu1~20.04.1 locking the screen (unrelated to suspend) using Windows+L would directly crash gnome-shell and it would be restarted. The same now works again with the update.

Thank you!

Daniel van Vugt (vanvugt) wrote :

JP,

This crash does not affect 18.04. There have been ZERO cases of it from bionic.

If you experience any problems with 18.04 then please open a new bug by running:

  ubuntu-bug gnome-shell

tags: added: verification-done verification-done-focal
removed: verification-needed verification-needed-focal
Slavo Roikhel (slavoroi) wrote :

Fixed for me in ubuntu 20.04, gnome-shell GNOME Shell 3.36.3
after checking prereleased version the software updater.

Launchpad Janitor (janitor) wrote :
Download full text (4.4 KiB)

This bug was fixed in the package gnome-shell - 3.36.3-1ubuntu1~20.04.2

---------------
gnome-shell (3.36.3-1ubuntu1~20.04.2) focal; urgency=medium

  * No change backport to focal

gnome-shell (3.36.3-1ubuntu2) groovy; urgency=medium

  * d/p/shell-mime-sniffer-Ignore-invalid-file-content-type.patch:
    - gnome-shell-sniffer, don't crash when opening files with invalid content
      type (LP: #1865300)

gnome-shell (3.36.3-1ubuntu1~20.04.1) focal; urgency=medium

  * No change backport to focal (LP: #1881973)

gnome-shell (3.36.3-1ubuntu1) groovy; urgency=medium

  * Merge with debian, including new upstream release:
    - Fix app icon aspect ratio in the panel (LP: #1872026)
    - Ensure that Do not disturb is persistent across sessions (LP: #1873692)
    - Fix Theme node crashes (LP: #1877774, LP: #1877760)
  * debian/patches: Refresh
  * Remaining changes with debian:
    - Replace gnome-backgrounds dep with ubuntu-wallpapers and Suggests
      gnome-themes-standard-data, gnome-backgrounds
    - Add some Recommends:
      + ubuntu-session (| gnome-session) to have the ubuntu session available
      + xserver-xorg-legacy
      + yaru-theme-gnome-shell for the default ubuntu theming
    - Update debian/gbp.conf with Ubuntu settings
    - gnome-shell-common.prerm: Remove deprecated ubuntu theme alternative
    - ubuntu/desktop_detect.patch:
      + add caching for desktop detection to avoid querying the current
        desktop env variable as iterate through the list each time. For the
        time of the Shell process, we can expect this env variable to stay
        stable.
    - ubuntu/smarter_alt_tab.patch:
      + quick alt-tab (without showing up the switcher) switch only between
        the last window of the last 2 applications to be focused instead of
        raising all windows of those apps.
    - ubuntu/lightdm-user-switching.patch:
      + Allow user switching when using LightDM.
    - ubuntu/lock_on_suspend.patch
      + Respect Ubuntu's lock-on-suspend setting.
    - ubuntu/background_login.patch
      + Change default background color as we modified the default GDM color
        for our ubuntu session.
    - ubuntu/gdm_alternatives.patch
      + Add support for GDM3 theme alternatives
    - optional-hot-corner.patch
      + enable patch proposed by upstream developer already in package (but
        not in series) to add a settings for optional hot corner activation.
    - main-show-an-error-message-on-gnome-shell-crash.patch,
      global-make-possible-to-set-debug-flags-dynamically.patch,
      main-increase-the-granularity-of-backtraces-in-SHELL_DEBU.patch,
      main-add-backtrace-crashes-all-and-backtrace-all.patch,
      sessionMode-add-support-for-debugFlags-parameter.patch:
      + Improve debug JS tracing for crash reports
    - st-scroll-view-Handle-the-case-where-scrollbars-are-NULL.patch:
      + Fix crash on theme changes
    - ubuntu/search-call-XUbuntuCancel-method-on-providers-when-no-dat.patch:
      + stop searches when requested from UI
    - magnifier-Show-cursor-when-magnifier-is-enabled-and-scale.patch:
      + Show monitor scaled cursor when magnifier is enabled
    - Break gnome-shell-extension-desktop...

Read more...

Changed in gnome-shell (Ubuntu Focal):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for gnome-shell has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Brendan_P (brendan-p) wrote :

Via dup: https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1886672

For me, the issue is fixed when unlocking the screen.

However NOT when resuming laptop after a suspend.

Laptop, using laptop display only > Suspend > Plugin additional monitor > Resume. Only laptop screen is active.

Login > Restart Gnome-shell, second screen resumes.

Brendan_P (brendan-p) wrote :

Via dup: https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1886672

Adding some additional testing to my above comments.

*When second monitor is not removed*, i.e. remains connected, lock screen/suspend resume all restore display as expected after latest updates as suggested by Daniel in above linked dup.

Plugging display out, gnome adjusts to single screen settings as expected. But plugging back the second monitor in does nothing. Restarting gnome-shell resets displays as expected. I.e. working.

Also note not working in #26 regarding resuming laptop after plugging in screen.

Daniel van Vugt (vanvugt) wrote :

Brendan_P,

This bug is closed. Please put all further comments in bug 1886672 only.

To post a comment you must log in.