Hibernation does not work on Dell XPS 9530

I am using OpenSUSE Slowroll on a Dell XPS 9530 15" laptop and hibernation does not work.

I think the issue may have something to do with my NVIDIA drivers.

In “Power Management” I have my laptop set to hibernate after 10 minutes of inactivity.

Whether I choose to Hibernate from the start menu, or whether I leave my laptop running on battery power for 10 minutes, I get the following output when the system is attempting to hibernate:

If I chose Hibernation from the start menu, my laptop shuts down successfully. But, when I turn the laptop back on, my system does not recover from hibernation; none of my programs or documents are open; the system behaves as if it had been shut down.

If the hibernation begins automatically after 10 minutes of inactivity on battery the system never shuts down and the output I showed you stays on the screen until the laptop runs out of battery.

Please, show the output of: cat /boot/grub2/grub.cfg

cat /boot/grub2/grub.cfg gives the following:

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
set btrfs_relative_path="y"
export btrfs_relative_path
if [ -f ${config_directory}/grubenv ]; then
  load_env -f ${config_directory}/grubenv
elif [ -s $prefix/grubenv ]; then
  load_env
fi

if [ "${env_block}" ] ; then
  set env_block="(${root})${env_block}"
  export env_block
  load_env -f "${env_block}"
fi

if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   if [ "${env_block}" ] ; then
     save_env -f "${env_block}" next_entry
   fi
   set boot_once=true
else
   set default="${saved_entry}"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    if [ "${env_block}" ] ; then
      save_env -f "${env_block}" saved_entry
    else
      save_env saved_entry
    fi

  fi
}

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_gpt
insmod cryptodisk
insmod luks
insmod gcry_rijndael
insmod gcry_rijndael
insmod gcry_sha256
insmod lvm
insmod btrfs
cryptomount -u f6de00861c0b448b9e75549ce0c1a851
set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
else
  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
fi
    font="/usr/share/grub2/unicode.pf2"
fi

if loadfont $font ; then
  if [ "${grub_platform}" = "efi" ]; then
    echo "Please press 't' to show the boot menu on this console"
  fi

  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_input console

for i in gfxterm; do
  if [ x${use_append} = xtrue ]; then
     terminal_output --append $i
  elif terminal_output $i; then
     use_append=true;
  fi
done

insmod part_gpt
insmod cryptodisk
insmod luks
insmod gcry_rijndael
insmod gcry_rijndael
insmod gcry_sha256
insmod lvm
insmod btrfs
cryptomount -u f6de00861c0b448b9e75549ce0c1a851
set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
else
  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
fi
insmod gfxmenu
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans-Bold14.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans10.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/DejaVuSans12.pf2
loadfont ($root)/boot/grub2/themes/openSUSE/ascii.pf2
insmod png
set theme=($root)/boot/grub2/themes/openSUSE/theme.txt
export theme
if [ x${boot_once} = xtrue ]; then
  set timeout=0
elif [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=8
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=8
fi
if [ -n "$extra_cmdline" ]; then
  menuentry "Help on bootable snapshot #$snapshot_num" {
    echo "Select the default entry of the snapshot boot menu."
    echo "Examine the snapshot, and if it's OK,"
    echo "   run 'snapper rollback' and reboot."
    echo "See 'System Rollback by Booting from Snapshots'"
    echo "   in the manual for more information."
    echo "  ** Hit Any Key to return to boot menu **  "
    read
  }
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/00_tuned ###
set tuned_params=""
set tuned_initrd=""
### END /etc/grub.d/00_tuned ###

### BEGIN /etc/grub.d/05_crypttab ###
crypttab_entry cr_nvme-eui.0025384141427cf4-part2 f6de00861c0b448b9e75549ce0c1a851 none
### END /etc/grub.d/05_crypttab ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'openSUSE Tumbleweed-Slowroll'  --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod cryptodisk
        insmod luks
        insmod gcry_rijndael
        insmod gcry_rijndael
        insmod gcry_sha256
        insmod lvm
        insmod btrfs
        cryptomount -u f6de00861c0b448b9e75549ce0c1a851
        set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
        else
          search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
        fi
        echo    'Loading Linux 6.10.5-1-default ...'
        linux   /boot/vmlinuz-6.10.5-1-default root=/dev/mapper/system-root  ${extra_cmdline} splash=silent resume=/dev/system/swap mitigations=auto quiet security=apparmor
        echo    'Loading initial ramdisk ...'
        initrd  /boot/initrd-6.10.5-1-default
}
submenu 'Advanced options for openSUSE Tumbleweed-Slowroll' --hotkey=1 $menuentry_id_option 'gnulinux-advanced-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
        menuentry 'openSUSE Tumbleweed-Slowroll, with Linux 6.10.5-1-default' --hotkey=2 --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.10.5-1-default-advanced-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod cryptodisk
                insmod luks
                insmod gcry_rijndael
                insmod gcry_rijndael
                insmod gcry_sha256
                insmod lvm
                insmod btrfs
                cryptomount -u f6de00861c0b448b9e75549ce0c1a851
                set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                else
                  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                fi
                echo    'Loading Linux 6.10.5-1-default ...'
                linux   /boot/vmlinuz-6.10.5-1-default root=/dev/mapper/system-root  ${extra_cmdline} splash=silent resume=/dev/system/swap mitigations=auto quiet security=apparmor
                echo    'Loading initial ramdisk ...'
                initrd  /boot/initrd-6.10.5-1-default
        }
        menuentry 'openSUSE Tumbleweed-Slowroll, with Linux 6.10.5-1-default (recovery mode)' --hotkey=3 --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.10.5-1-default-recovery-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod cryptodisk
                insmod luks
                insmod gcry_rijndael
                insmod gcry_rijndael
                insmod gcry_sha256
                insmod lvm
                insmod btrfs
                cryptomount -u f6de00861c0b448b9e75549ce0c1a851
                set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                else
                  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                fi
                echo    'Loading Linux 6.10.5-1-default ...'
                linux   /boot/vmlinuz-6.10.5-1-default root=/dev/mapper/system-root single  ${extra_cmdline}
                echo    'Loading initial ramdisk ...'
                initrd  /boot/initrd-6.10.5-1-default
        }
        menuentry 'openSUSE Tumbleweed-Slowroll, with Linux 6.10.3-1-default'  --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.10.3-1-default-advanced-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod cryptodisk
                insmod luks
                insmod gcry_rijndael
                insmod gcry_rijndael
                insmod gcry_sha256
                insmod lvm
                insmod btrfs
                cryptomount -u f6de00861c0b448b9e75549ce0c1a851
                set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                else
                  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                fi
                echo    'Loading Linux 6.10.3-1-default ...'
                linux   /boot/vmlinuz-6.10.3-1-default root=/dev/mapper/system-root  ${extra_cmdline} splash=silent resume=/dev/system/swap mitigations=auto quiet security=apparmor
                echo    'Loading initial ramdisk ...'
                initrd  /boot/initrd-6.10.3-1-default
        }
        menuentry 'openSUSE Tumbleweed-Slowroll, with Linux 6.10.3-1-default (recovery mode)' --hotkey=1 --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.10.3-1-default-recovery-96f5b121-cbf3-443f-9064-64d4f1d3e4f9' {
                load_video
                set gfxpayload=keep
                insmod gzio
                insmod part_gpt
                insmod cryptodisk
                insmod luks
                insmod gcry_rijndael
                insmod gcry_rijndael
                insmod gcry_sha256
                insmod lvm
                insmod btrfs
                cryptomount -u f6de00861c0b448b9e75549ce0c1a851
                set root='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint='lvmid/aYM2R5-zJLf-xFhJ-Of61-KJ2h-s7sd-2Ny4rj/PuwAZo-DqzA-6ZnU-ouQX-sx9K-Di0h-rwfY5l'  96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                else
                  search --no-floppy --fs-uuid --set=root 96f5b121-cbf3-443f-9064-64d4f1d3e4f9
                fi
                echo    'Loading Linux 6.10.3-1-default ...'
                linux   /boot/vmlinuz-6.10.3-1-default root=/dev/mapper/system-root single  ${extra_cmdline}
                echo    'Loading initial ramdisk ...'
                initrd  /boot/initrd-6.10.3-1-default
        }
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/25_bli ###
if [ "$grub_platform" = "efi" ]; then
  insmod bli
fi
### END /etc/grub.d/25_bli ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/nvme1n1p1)' --class windows --class os $menuentry_id_option 'osprober-efi-8639-66AD' {
        insmod part_gpt
        insmod fat
        search --no-floppy --fs-uuid --set=root 8639-66AD
        chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
        menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
                fwsetup --is-supported
                if [ "$?" = 0 ]; then
                        fwsetup
                else
                        echo "Your firmware doesn't support setup menu entry from a boot loader"
                        echo "Press any key to return ..."
                        read
                fi
        }
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/80_suse_btrfs_snapshot ###
btrfs-mount-subvol ($root) /.snapshots @/.snapshots
if [ -f "/.snapshots/grub-snapshot.cfg" ]; then
  source "/.snapshots/grub-snapshot.cfg"
fi
### END /etc/grub.d/80_suse_btrfs_snapshot ###

### BEGIN /etc/grub.d/90_persistent ###
### END /etc/grub.d/90_persistent ###

##

What’s the output of cat /sys/power/state && cat /sys/power/disk.

For example, I have hibernation turned off and only have S2RAM so it looks like this:

pavin@suse-pc:~> cat /sys/power/state && cat /sys/power/disk
freeze mem
[disabled]

You should see disk on the first line and some other info on the second line.

Reference:
https://docs.kernel.org/admin-guide/pm/sleep-states.html

Could you do the following?
First run systemctl hibernate. Based on your description, the system should turn off. Then, turn it on again and run the following five commands:

sudo journalctl -b -1 --no-hostname --no-pager --all | susepaste -e 131040
sudo journalctl -b --no-hostname --no-pager --all | susepaste -e 131040
sudo swapon
cat /etc/fstab
lsblk -f -o +partuuid
wiking@localhost:~> cat /sys/power/state && cat /sys/power/disk
freeze mem disk
[platform] shutdown reboot suspend test_resume 

If I do “systemctl hibernate” I get the output shown in my original post however the system does not shut down. It just sits there so I need to do a hard shutdown with the power button. If this is the case, should I still run those five commands?

I wouldn’t expect a difference between system menu hibernate button and systemctl hibernate.
Do all of that and let’s see if some evidence show up in log.

Great, please do:

# change hibernation mode to shutdown
# the platform mode can have issues handing over to BIOS/UEFI
echo 'shutdown' > /sys/power/disk
# verify change (shutdown should be enclosed in square brackets)
cat /sys/power/disk
# hibernate using
systemctl hibernate
# or
echo 'disk' > /sys/power/state

I don’t think the first two commands were successful:

wiking@localhost:~> sudo journalctl -b -1 --no-hostname --no-pager --all | susepaste -e 131040
Pasted as:
   https://paste.opensuse.org/004a96a53487
Failed to get path for session '3
4': No session '3
4' known
Graphics server not found. Copying to clipboard is not possible.
wiking@localhost:~> sudo journalctl -b --no-hostname --no-pager --all | susepaste -e 131040
Pasted as:
   https://paste.opensuse.org/0bd4a58ffa9f
Failed to get path for session '3
4': No session '3
4' known
Graphics server not found. Copying to clipboard is not possible.
wiking@localhost:~> sudo swapon
cat /etc/fstab
lsblk -f -o +partuuidNAME      TYPE       SIZE USED PRIO
/dev/dm-2 partition 62.5G   0B   -2
wiking@localhost:~> cat /etc/fstab
/dev/system/root  /                       btrfs  defaults                      0  0
/dev/system/root  /var                    btrfs  subvol=/@/var                 0  0
/dev/system/root  /usr/local              btrfs  subvol=/@/usr/local           0  0
/dev/system/root  /srv                    btrfs  subvol=/@/srv                 0  0
/dev/system/root  /root                   btrfs  subvol=/@/root                0  0
/dev/system/root  /opt                    btrfs  subvol=/@/opt                 0  0
/dev/system/home  /home                   xfs    defaults                      0  0
/dev/system/root  /boot/grub2/x86_64-efi  btrfs  subvol=/@/boot/grub2/x86_64-efi  0  0
/dev/system/root  /boot/grub2/i386-pc     btrfs  subvol=/@/boot/grub2/i386-pc  0  0
/dev/system/swap  swap                    swap   defaults                      0  0
/dev/system/root  /.snapshots             btrfs  subvol=/@/.snapshots          0  0
UUID=298C-E7D3    /boot/efi               vfat   utf8                          0  2
wiking@localhost:~> lsblk -f -o +partuuid
NAME FSTYPE FSVER LABEL       UUID                                   FSAVAIL FSUSE% MOUNTPOINTS PARTUUID
mmcblk0
│                                                                                               
└─mmcblk0p1
     vfat   FAT32 EOS_DIGITAL 147F-1647                                                         
nvme1n1
│                                                                                               
├─nvme1n1p1
│    vfat   FAT32             8639-66AD                                                         12f3b177-56c6-466b-9b71-66083ede8b12
├─nvme1n1p2
│                                                                                               5f38aea6-c691-4baf-b283-39d665538e9e
├─nvme1n1p3
│    ntfs                     361C3BAD1C3B6751                          1.7T    54% /mnt/ntfs   c84b3f68-74e9-464b-95f7-b625c8632428
└─nvme1n1p4
     ntfs                     0AF84013F83FFB87                                                  b385950a-7a2b-499f-aecc-5b386d6a2c05
nvme0n1
│                                                                                               
├─nvme0n1p1
│    vfat   FAT32             298C-E7D3                               504.9M     1% /boot/efi   3ed81599-80e2-4199-b765-cc73fc75330d
└─nvme0n1p2
  │  crypto 1                 f6de0086-1c0b-448b-9e75-549ce0c1a851                              189fa13c-9564-472e-94db-9ab29cac57e4
  └─cr_nvme-eui.0025384141427cf4-part2
    │  LVM2_m LVM2              B70oL5-112X-EuKw-yGnI-DLJD-nhut-E2JzL1                            
    ├─system-root
    │  btrfs                    96f5b121-cbf3-443f-9064-64d4f1d3e4f9      1.2T     2% /var        
    │                                                                                 /usr/local  
    │                                                                                 /srv        
    │                                                                                 /root       
    │                                                                                 /opt        
    │                                                                                 /boot/grub2/x86_64-efi 
    │                                                                                 /boot/grub2/i386-pc 
    │                                                                                 /.snapshots 
    │                                                                                 /           
    ├─system-swap
    │  swap   1                 db88b499-d05c-4d86-80f6-492963a2e826                  [SWAP]      
    └─system-home
       xfs                      1be318d2-9fb1-49b5-95d7-c069c9a669d3    507.7G    79% /home     

I made the change after first using the “su” command (this was the only way I could get permission to change /sys/power/disk). I verified the change also. I hibernated using ‘systemctl hibernate’ and the system did shut down but nothing was restored when I restarted; none of my programs or documents were still open. Now when I do ‘cat /sys/power/disk’ I no longer see those changes; shutdown is no longer enclosed in square brackets. If I leave my laptop on battery, it will now shutdown successfully however when I restart none of my programs or documents are open.

I don’t understand what you are saying. I need some more context for these remarks.

Sorry, forgot to mention. You need to be root to write/modify those variables.
Preferably using sudo -i or if using su using su -l to clear out the current user’s environment variables.

This is expected as we did not persist the runtime changes by writing to those pseudo files. See man 5 sysctl.d.

This could be due to some error saving the contents of RAM to disk or less likely restoring from it.

  1. Make sure your swap partition is at least 1.1x the size of your RAM.
  2. Provide output of cat /proc/cmdline. There should be a resume parameter pointing to your swap partition.
  3. Get the logs from the current and last boot using:
  • sudo journalctl --no-pager -k -b > current_boot.txt
  • sudo journalctl --no-pager -k -b -1 > last_boot.txt
    And post to https://paste.opensuse.org/

The failure message at the end is defect.
Please, show the output of this command: inxi -Fz

As far as #1: I don’t think I even have a swap partition. I didn’t think I would need one since I have 64 GB of RAM, because the system wouldn’t need to swap. Do I need a swap partition to hibernate? I thought it could be written to a file. Maybe I’m just short of empty disk space.

As far as #2,

wiking@localhost:~> cat /proc/cmdline 
BOOT_IMAGE=/boot/vmlinuz-6.10.5-1-default root=/dev/mapper/system-root splash=silent resume=/dev/system/swap mitigations=auto quiet security=apparmor

I will work on #3.

#3:

current boot:
https://paste.opensuse.org/pastes/42dd1a87a75b

last boot:
https://paste.opensuse.org/pastes/c037dbeb4772


wiking@localhost:~> inxi -Fz
System:
  Kernel: 6.10.5-1-default arch: x86_64 bits: 64
  Desktop: KDE Plasma v: 6.1.4 Distro: openSUSE Tumbleweed-Slowroll 20240803
Machine:
  Type: Laptop System: Dell product: XPS 15 9530 v: N/A
    serial: <superuser required>
  Mobo: Dell model: 00KH17 v: A00 serial: <superuser required> UEFI: Dell
    v: 1.12.0 date: 03/06/2024
Battery:
  ID-1: BAT0 charge: 83.3 Wh (98.0%) condition: 85.0/84.3 Wh (100.9%)
CPU:
  Info: 14-core (6-mt/8-st) model: 13th Gen Intel Core i9-13900H bits: 64
    type: MST AMCP cache: L2: 11.5 MiB
  Speed (MHz): avg: 433 min/max: 400/5200:5400:4100 cores: 1: 400 2: 400
    3: 400 4: 400 5: 400 6: 400 7: 747 8: 400 9: 400 10: 400 11: 400 12: 400
    13: 400 14: 400 15: 400 16: 727 17: 400 18: 400 19: 400 20: 400
Graphics:
  Device-1: Intel Raptor Lake-P [Iris Xe Graphics] driver: i915 v: kernel
  Device-2: NVIDIA AD106M [GeForce RTX 4070 Max-Q / Mobile] driver: nvidia
    v: 550.100
  Device-3: Realtek Integrated_Webcam_HD driver: uvcvideo type: USB
  Display: x11 server: X.Org v: 21.1.12 with: Xwayland v: 24.1.1 driver: X:
    loaded: modesetting,nvidia unloaded: fbdev,vesa dri: iris gpu: i915
    resolution: 3456x2160~60Hz
  API: EGL v: 1.5 drivers: iris,nvidia,swrast
    platforms: gbm,x11,surfaceless,device
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 24.1.5
    renderer: Mesa Intel Graphics (RPL-P)
  API: Vulkan v: 1.3.290 drivers: N/A surfaces: xcb,xlib
Audio:
  Device-1: Intel Raptor Lake-P/U/H cAVS driver: sof-audio-pci-intel-tgl
  API: ALSA v: k6.10.5-1-default status: kernel-api
  Server-1: PipeWire v: 1.2.2 status: active
Network:
  Device-1: Intel Raptor Lake PCH CNVi WiFi driver: iwlwifi
  IF: wlp0s20f3 state: up mac: <filter>
  IF-ID-1: wg0-mullvad state: unknown speed: N/A duplex: N/A mac: N/A
Bluetooth:
  Device-1: Intel AX211 Bluetooth driver: btusb type: USB
  Report: btmgmt ID: hci0 state: up address: <filter> bt-v: 5.3
RAID:
  Hardware-1: Intel Volume Management Device NVMe RAID Controller Intel
    driver: vmd
Drives:
  Local Storage: total: 7.31 TiB used: 1.9 TiB (26.1%)
  ID-1: /dev/mmcblk0 vendor: SanDisk model: SE32G size: 29.72 GiB
    type: Removable
  ID-2: /dev/nvme0n1 vendor: Samsung model: SSD 990 PRO 4TB size: 3.64 TiB
  ID-3: /dev/nvme1n1 vendor: Samsung model: SSD 990 PRO 4TB size: 3.64 TiB
Partition:
  ID-1: / size: 1.2 TiB used: 27.2 GiB (2.2%) fs: btrfs dev: /dev/dm-1
  ID-2: /boot/efi size: 511 MiB used: 6.1 MiB (1.2%) fs: vfat
    dev: /dev/nvme1n1p1
  ID-3: /home size: 2.37 TiB used: 1.88 TiB (79.1%) fs: xfs dev: /dev/dm-3
  ID-4: /opt size: 1.2 TiB used: 27.2 GiB (2.2%) fs: btrfs dev: /dev/dm-1
  ID-5: /var size: 1.2 TiB used: 27.2 GiB (2.2%) fs: btrfs dev: /dev/dm-1
Swap:
  ID-1: swap-1 type: partition size: 62.48 GiB used: 0 KiB (0.0%)
    dev: /dev/dm-2
Sensors:
  System Temperatures: cpu: 45.0 C mobo: 39.0 C
  Fan Speeds (rpm): cpu: 2568 fan-2: 2341
Info:
  Memory: total: 64 GiB note: est. available: 62.47 GiB used: 6 GiB (9.6%)
  Processes: 451 Uptime: 0h 32m Shell: Bash inxi: 3.3.35

Swap is needed to hibernate and can be in file. I guess you used the guided partitioning during installation and marked the option to expand swap. You only need swap enough to save the in memory data.

Try to add to add the parameter nvidia_drm.modeset=1 to Kernel. You can do it through YaST > Bootloader > Kernel parameters. Reboot and test hibernation.

I should have enough disk space for what is in memory. The reason I didn’t make a SWAP partition is because the OS would never need to do paging considering system has 64 GB of RAM.

I added this expression to “Optional Kernel Command Line Parameter” and when it was there the system would not shut down during hibernate; I had to do a hard shutdown by pressing the power button. I confirmed this 3 times. When I removed the expression the system was able to shut down properly during hibernation.

Either way, the restoration of programs and documents on startup still does not work.