You are not logged in.
Not sure where else to go with this, so I'll try here this time around.
I have a laptop with an AMD CPU + iGPU (a ThinkPad A285 to be exact; have posted about it already on here before) where suspending the machine and resuming it will result in a corrupted version of what was on screen when you initially suspended it (not exactly a current picture and not really representative of my current setup (pic has XFCE, current test setup has Plasma Wayland, but I will probably end up using XFCE anyway if I do get this resolved and make a "permanent" install) but the symptoms are the exact same as what's shown there) being shown on screen for anywhere between a split second to 2 seconds before going back to "intended behavior". While I am using Arch for testing this (and this is the Arch forums after all), it's "broken" (really, this is mostly a non-issue, except for me for some reason) on everything except Ubuntu and derivatives, where it works just fine and doesn't do this.
I first thought that it was because of kernel patches that Ubuntu applies to their kernels, however this wasn't actually the case (somebody made a PKGBUILD to repackage the Ubuntu binary kernel for Arch, though I was planning on doing this myself anyway but they beat me to it), and at this point I'm not sure what else it could be. I have some ideas as to what could be happening, however nothing that I can really verify easily.
What it isn't:
Kernel patches. I know this because I've been running xanmod on my Ubuntu (Mint, really) install on the same device and there's no issue like this when suspending, however when using it on Arch (with this AUR package, which literally takes the exact same package as the one I have on Mint, so it can't be patch differences), so... Also, as I mentioned, the "vanilla" Ubuntu kernel on Arch behaves the same way (i.e. not "properly").
Missing firmware (linux-firmware, ...)
Missing CPU microcode (amd-ucode)
Xorg vs Wayland differences
There's also the fact that it's fine on Ubuntu (running 24.04 currently, however I was able to get it to work on 22.04 too, and in fact it had to have worked years earlier on there) but *not* on Debian (only tested `stable` (12) for now), which made me think it was kernel patches in the first place. I would have thought that it would *at least* work there too, but apparently not.
Maybe it really *is* patches in *something else* that Ubuntu has (`mesa` maybe), however I'm more inclined to think that it's just something that Ubuntu has pre-configured already but no other distro has. Both are plausible, though. I *think* I've also noticed that the screen gets turned on earlier on Arch (or all other distros in general) than on Ubuntu, which makes me think that it's just Ubuntu having *something* (not sure what that "*something*" is, though) configured to wake the screen up later in order to hide this kind of thing. Wouldn't really surprise me.
I must mention that getting this device to hibernate on Arch requires removing the `kms` hook from `/etc/mkinitcpio.conf`, because the GPU in here doesn't appear to play well with early KMS and hibernation, so that might be related.
Here's some logs (though they're probably mostly useless anyway):
Arch:
eglinfo -B: https://termbin.com/m9a2j
glxinfo -B (under xwayland): https://termbin.com/9azt
Arch (linux-xanmod-bin); this one's here because it's what I also run on my Mint install most of the time, even though Arch doesn't officially support it:
inxi -Fxxxi: https://termbin.com/7wej
/proc/cmdline:
BOOT_IMAGE=/@/boot/vmlinuz-linux-xanmod root=UUID=ab6c688d-1a1a-49a3-8d11-df238975cff4 rw rootflags=subvol=@ loglevel=3 quiet resume=UUID=5c312eae-6a6a-46c1-9c7a-0a20cfbc276f
journalctl -xe (after suspend): https://termbin.com/r7nw
journalctl -xe (after hibernate): https://termbin.com/j1kp
dmesg (after suspend): https://termbin.com/jcrc
dmesg (after hibernate): https://termbin.com/3409
Arch (linux-lts):
journalctl -xe (after suspend): https://termbin.com/p4k9
journalctl -xe (after hibernate): N/A (didn't work when I tried it, sorry)
dmesg (after suspend): https://termbin.com/qsj1
dmesg (after hibernate): N/A
inxi -Fxxxi: https://termbin.com/u56a
Arch (linux-zen):
journalctl -xe (after suspend): https://termbin.com/92t1
journalctl -xe (after hibernate): https://termbin.com/st6b
dmesg (after suspend): https://termbin.com/g8uv
dmesg (after hibernate): https://termbin.com/w61y
inxi -Fxxxi: https://termbin.com/ptur
Mint (technically irrelevant for this place but still putting it here anyway):
inxi -Fxxxi: https://termbin.com/k4ya
eglinfo -B: https://termbin.com/tynv
glxinfo -B: https://termbin.com/ydlo
/proc/cmdline:
BOOT_IMAGE=/vmlinuz-6.12.5-x64v3-xanmod1 root=/dev/mapper/a285_vg-system11 ro rootflags=subvol=@ quiet splash resume=/dev/disk/by-uuid/aee9bef0-b0ba-4551-b966-d42e8466e62f
journalctl -xe (after suspend): https://termbin.com/li95
journalctl -xe (after hibernate): https://termbin.com/3l43
dmesg (after suspend): https://termbin.com/6ruc
dmesg (after hibernate): https://termbin.com/aggq
Any ideas as to what I could do to figure out what's going on here? This is a very interesting (and annoying!) case to deal with because many people will just tell you "all the distros are the same under the hood anyway" but this is one of those cases where they're *not* and I can't for the life of me figure out how to carry over whatever Ubuntu is doing here to Arch (or any other distro, but Arch is what I want to run), so...
Offline