Resuming from hibernate fails almost every time

Going to hibernate seems to work fine, but waking up from it again seems to fail 90% of the time. It’s like I just rebooted, all my open windows get lost. It used to work just fine, but it’s been broken for months now. Any ideas what’s wrong here?

dmesg says:

[   19.938145] PM: hibernation: resume from hibernation
[   19.938156] random: crng reseeded on system resumption
[   19.939141] Freezing user space processes ... (elapsed 0.136 seconds) done.
[   20.075487] OOM killer disabled.
[   20.075487] Freezing remaining freezable tasks ... (elapsed 0.000 seconds) done.
[   20.076300] PM: hibernation: Marking nosave pages: [mem 0x00000000-0x00000fff]
[   20.076302] PM: hibernation: Marking nosave pages: [mem 0x00058000-0x00058fff]
[   20.076304] PM: hibernation: Marking nosave pages: [mem 0x0009f000-0x000fffff]
[   20.076305] PM: hibernation: Marking nosave pages: [mem 0x01000000-0x049e4fff]
[   20.076452] PM: hibernation: Marking nosave pages: [mem 0x19243000-0x19243fff]
[   20.076452] PM: hibernation: Marking nosave pages: [mem 0x19253000-0x19254fff]
[   20.076453] PM: hibernation: Marking nosave pages: [mem 0x19263000-0x1c493fff]
[   20.076580] PM: hibernation: Marking nosave pages: [mem 0x2be0a000-0x2be0bfff]
[   20.076581] PM: hibernation: Marking nosave pages: [mem 0x38175000-0x381ddfff]
[   20.076583] PM: hibernation: Marking nosave pages: [mem 0x3e1e4000-0x3fffefff]
[   20.076659] PM: hibernation: Marking nosave pages: [mem 0x40000000-0x47ffffff]
[   20.076748] PM: hibernation: Marking nosave pages: [mem 0x48600000-0xffffffff]
[   20.079057] PM: hibernation: Basic memory bitmaps created
[   20.192150] PM: Using 3 thread(s) for decompression
[   20.192152] PM: Loading and decompressing image data (1523145 pages)...
[   20.192155] Hibernate inconsistent memory map detected!
[   20.192157] PM: hibernation: Image mismatch: architecture specific data
[   20.192158] PM: hibernation: Read 6092580 kbytes in 0.01 seconds (609258.00 MB/s)
[   20.193521] PM: Error -1 resuming
[   20.193525] PM: hibernation: Failed to load image, recovering.
[   20.194548] PM: hibernation: Basic memory bitmaps freed
[   20.194549] OOM killer enabled.
[   20.194549] Restarting tasks ... done.
[   20.195255] PM: hibernation: resume failed (-1)

Kernel params:

BOOT_IMAGE=(hd0,gpt2)/vmlinuz-5.19.7-100.fc35.x86_64 root=UUID=zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz ro rootflags=subvol=root rd.driver.pre=vfio-pci kvm.ignore_msrs=1 i915.enable_gvt=1 intel_iommu=on amd_iommu=on iommu=1 resume=/dev/mapper/luks-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rd.luks.uuid=luks-yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy rd.luks.uuid=luks-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx rhgb quiet

lsblk says:

NAME                                          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
zram0                                         252:0    0     8G  0 disk  [SWAP]
nvme0n1                                       259:0    0 476.9G  0 disk  
├─nvme0n1p1                                   259:1    0   600M  0 part  /boot/efi
├─nvme0n1p2                                   259:2    0     1G  0 part  /boot
├─nvme0n1p3                                   259:3    0    32G  0 part  
│ └─luks-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 253:0    0    32G  0 crypt [SWAP]
└─nvme0n1p4                                   259:4    0 443.4G  0 part  
  └─luks-yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy 253:1    0 443.3G  0 crypt /home
                                                                         /

and free says:

$ free -h
               total        used        free      shared  buff/cache   available
Mem:            15Gi       5.9Gi       4.4Gi       2.2Gi       4.9Gi       6.8Gi
Swap:           39Gi       2.9Gi        37Gi

After booting while connected to my docking station, hibernating and resuming works flawlessly , UNLESS the docking station is disconnected at any point in time. Even if the notebook is already in hibernate and turned off, disconnecting the docking station will cause it to not resume from hibernate, even if reconnecting before turning it back on.

It’s a Dell XPS 15 Notebook with a Thunderbolt 3 Docking station from Dell.