Skip to content

Instantly share code, notes, and snippets.

@pavelskipenes
Last active November 29, 2022 22:53
Show Gist options
  • Save pavelskipenes/1e9ead48d5a95d36b377546f5144f14c to your computer and use it in GitHub Desktop.
Save pavelskipenes/1e9ead48d5a95d36b377546f5144f14c to your computer and use it in GitHub Desktop.

gnome-shell

Relavant links:

I have an interesting but I want to fix on my system. Whenever I wake up my computer the display manager crashes and a new session appears. All my programs have been closed but that is usually not an issue since mostly all of them recover last open state anyway.

I've prepared for the next crash by preparing this document with all commands to run, links and similar stuff. Also I've cleared out all logs and coredumps. When a new crash happens it will most likely not be mixed up with something else.

steps to reproduce

  • close lid
  • wait 5 - 10 minutes
  • open lid

Crash log

journalctl --since="5 min ago"

logs in journal.log file can be found here

Core file

coredumpctl list
...
Tue 2022-11-29 12:11:53 CET    1169 1000 1000 SIGSEGV present      /usr/bin/gnome-shell                                                             >
Tue 2022-11-29 15:48:19 CET   13126 1000 1000 SIGSEGV present      /usr/bin/gnome-shell                                                             >
Tue 2022-11-29 20:34:26 CET   32336 1000 1000 SIGSEGV present      /usr/bin/gnome-shell                                                             >
Tue 2022-11-29 21:03:03 CET   39855 1000 1000 SIGSEGV present      /usr/bin/gnome-shell  
coredumpctl gdb /usr/bin/gnome-shell
           PID: 39855 (gnome-shell)
           UID: 1000 (pavel)
           GID: 1000 (pavel)
        Signal: 11 (SEGV)
     Timestamp: Tue 2022-11-29 21:02:16 CET (11min ago)
  Command Line: /usr/bin/gnome-shell
    Executable: /usr/bin/gnome-shell
 Control Group: /user.slice/user-1000.slice/[email protected]/session.slice/[email protected]
          Unit: [email protected]
     User Unit: [email protected]
         Slice: user-1000.slice
     Owner UID: 1000 (pavel)
       Boot ID: 91c4a32825ec46a5af31ed686faa0fbe
    Machine ID: 8efa45f8c2da413ea33beb33a4b647b8
      Hostname: matebook
       Storage: /var/lib/systemd/coredump/core.gnome-shell.1000.91c4a32825ec46a5af31ed686faa0fbe.39855.1669752136000000.zst (present)
  Size on Disk: 7.1K
       Message: Process 39855 (gnome-shell) of user 1000 dumped core.

GNU gdb (GDB) 12.1
Copyright (C) 2022 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gnome-shell...
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
(No debugging symbols found in /usr/bin/gnome-shell)
"/var/tmp/coredump-K5bw65" is not a core dump: file format not recognized
file /var/tmp/coredump-K5bw65
/var/tmp/coredump-K5bw65: cannot open `/var/tmp/coredump-K5bw65' (No such file or directory)

> file /var/lib/systemd/coredump/core.gnome-shell.1000.91c4a32825ec46a5af31ed686faa0fbe.39855.1669752136000000.zst
/var/lib/systemd/coredump/core.gnome-shell.1000.91c4a32825ec46a5af31ed686faa0fbe.39855.1669752136000000.zst: Zstandard compressed data (v0.8+), Dictionary ID: None

> unzstd /var/lib/systemd/coredump/core.gnome-shell.1000.91c4a32825ec46a5af31ed686faa0fbe.39855.1669752136000000.zst -o output
/var/lib/systemd/coredump/core.gnome-shell.1000.91c4a32825ec46a5af31ed686faa0fbe.39855.1669752136000000.zst: 65416 bytes

> ls
 journal.log   output   readme.md

> file output
output: ELF 64-bit LSB core file, x86-64, version 1 (SYSV), can't read elf program headers at 65416

> mv output core

I'm not sure how coredumpctl works but it seems like it found core in /var/lib/... and extracted it to /var/tmp/.... However the core might be corrupted. That is also plausable as when I ran the unzstd command manually it said it copied 65416 bytes. Exactly the same error gave file command above. Looks like unexpected EOF to me. Which kind of make sence since laptop was shutting and systemd might have actually just killed the process that was saving core dump.

I need to figure out if coredumpctl has been shut down by systemd and if so, see if I can tweak in the configuration so coredumpctl get enough time to complete the coredump.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment