Problem with suspend on Lenovo T14 AMD

Hi everybody,

I got a strange problem when I try to suspend my T14. When powering it back on after suspend, the cursor of the password field blinks for about a second and then stops. The whole system is frozen, but the mouse cursor can still be moved. It’s also impossilble to change to tty2 or others. The only thing that helps is a hard reboot.

Some infos:
I’m running Manjaro with KDE. It’s a dualboot system with Windows 10, where everything is working fine. The two OS are installed on two different NVME drives. WIndows on the one that came with the laptop, Manjaro on a second one that I installed myself in the WWAN slot. Everything else is working fine, except for suspend.

What I observed so far:
I tried suspending on tty2 via systemctl suspend. After waking the machine up, everything was working fine for a few seconds, then I got a lot of input/output errors when trying to read the contents of the drive via ls (for some reason I can’t attach a picture). Trying shutting it down with systemctl or just changing directory with cd results in an “command not found” error. It seems like the drive isn’t powered up or something like that after suspend. There are also no error logs written at all, which would support my theory.

What I tried so far:
Adding different kernel parameters in GRUB like “ahcpi.disable=1” etc, pretty much everyone that seemed to be related to the problem according to Google. Of course I also changed the suspend options in the BIOS to Linux. I tried to install Manjaro GNOME, which resulted in the same behaviour.

And, last but not least, the output of inxi -Fazy

System:
    Kernel: 5.11.10-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.0 
    parameters: BOOT_IMAGE=/boot/vmlinuz-5.11-x86_64 
    root=UUID=d83ec6c6-e230-4bdd-8296-a2353423554b ro quiet apparmor=1 
    security=apparmor udev.log_priority=3 acpiphp.disable=1 
    Desktop: KDE Plasma 5.21.3 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 
    dm: SDDM Distro: Manjaro Linux base: Arch Linux 
Machine:
    Type: Laptop System: LENOVO product: 20UES00L00 v: ThinkPad T14 Gen 1 
    serial: <filter> Chassis: type: 10 serial: <filter> 
    Mobo: LENOVO model: 20UES00L00 serial: <filter> UEFI: LENOVO 
    v: R1BET60W(1.29 ) date: 11/30/2020 
Battery:
    ID-1: BAT0 charge: 44.9 Wh (87.2%) condition: 51.5/50.5 Wh (101.9%) 
    volts: 12.5 min: 11.6 model: LGC 5B10W139 type: Li-poly serial: <filter> 
    status: Discharging cycles: 9 
CPU:
    Info: 8-Core model: AMD Ryzen 7 PRO 4750U with Radeon Graphics bits: 64 
    type: MT MCP arch: Zen 2 family: 17 (23) model-id: 60 (96) stepping: 1 
    microcode: 8600106 cache: L2: 4 MiB 
    flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm 
    bogomips: 54318 
    Speed: 1397 MHz min/max: 1400/1700 MHz boost: enabled Core speeds (MHz): 
    1: 1397 2: 1397 3: 1397 4: 1397 5: 1397 6: 1397 7: 1397 8: 1397 9: 1397 
    10: 1397 11: 1397 12: 1397 13: 1397 14: 1397 15: 1397 16: 1397 
    Vulnerabilities: Type: itlb_multihit status: Not affected 
    Type: l1tf status: Not affected 
    Type: mds status: Not affected 
    Type: meltdown status: Not affected 
    Type: spec_store_bypass 
    mitigation: Speculative Store Bypass disabled via prctl and seccomp 
    Type: spectre_v1 
    mitigation: usercopy/swapgs barriers and __user pointer sanitization 
    Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, IBRS_FW, 
    STIBP: conditional, RSB filling 
    Type: srbds status: Not affected 
    Type: tsx_async_abort status: Not affected 
Graphics:
    Device-1: AMD Renoir vendor: Lenovo driver: amdgpu v: kernel bus-ID: 08:00.0 
    chip-ID: 1002:1636 class-ID: 0300 
    Device-2: Chicony Integrated Camera type: USB driver: uvcvideo bus-ID: 2-2:2 
    chip-ID: 04f2:b6d0 class-ID: fe01 serial: <filter> 
    Display: x11 server: X.Org 1.20.10 compositor: kwin_x11 driver: 
    loaded: amdgpu,ati unloaded: modesetting alternate: fbdev,vesa 
    display-ID: :0 screens: 1 
    Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2") 
    s-diag: 582mm (22.9") 
    Monitor-1: eDP res: 1920x1080 hz: 60 dpi: 158 size: 309x174mm (12.2x6.9") 
    diag: 355mm (14") 
    OpenGL: renderer: AMD RENOIR (DRM 3.40.0 5.11.10-1-MANJARO LLVM 11.1.0) 
    v: 4.6 Mesa 21.0.1 direct render: Yes 
Audio:
    Device-1: AMD vendor: Lenovo driver: snd_hda_intel v: kernel bus-ID: 08:00.1 
    chip-ID: 1002:1637 class-ID: 0403 
    Device-2: AMD Raven/Raven2/FireFlight/Renoir Audio Processor vendor: Lenovo 
    driver: snd_rn_pci_acp3x v: kernel alternate: snd_pci_acp3x bus-ID: 08:00.5 
    chip-ID: 1022:15e2 class-ID: 0480 
    Device-3: AMD Family 17h HD Audio vendor: Lenovo driver: snd_hda_intel 
    v: kernel bus-ID: 08:00.6 chip-ID: 1022:15e3 class-ID: 0403 
    Sound Server-1: ALSA v: k5.11.10-1-MANJARO running: yes 
    Sound Server-2: JACK v: 0.125.0 running: no 
    Sound Server-3: PulseAudio v: 14.2 running: yes 
    Sound Server-4: PipeWire v: 0.3.24 running: no 
Network:
    Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
    vendor: Lenovo driver: r8169 v: kernel port: 3400 bus-ID: 02:00.0 
    chip-ID: 10ec:8168 class-ID: 0200 
    IF: enp2s0f0 state: down mac: <filter> 
    Device-2: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel port: 3000 
    bus-ID: 03:00.0 chip-ID: 8086:2723 class-ID: 0280 
    IF: wlp3s0 state: up mac: <filter> 
    Device-3: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
    vendor: Lenovo driver: r8169 v: kernel port: 2000 bus-ID: 06:00.0 
    chip-ID: 10ec:8168 class-ID: 0200 
    IF: enp6s0 state: down mac: <filter> 
Bluetooth:
    Device-1: Intel AX200 Bluetooth type: USB driver: btusb v: 0.8 bus-ID: 6-4:3 
    chip-ID: 8087:0029 class-ID: e001 
    Report: This feature requires one of these tools: hciconfig/bt-adapter 
Drives:
    Local Storage: total: 1.4 TiB used: 645.83 GiB (45.1%) 
    SMART Message: Unable to run smartctl. Root privileges required. 
    ID-1: /dev/nvme0n1 maj-min: 259:3 vendor: Samsung model: MZVLB1T0HBLR-000L7 
    size: 953.87 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s 
    lanes: 4 rotation: SSD serial: <filter> rev: 5M2QEXF7 temp: 31.9 C 
    scheme: GPT 
    ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Western Digital 
    model: PC SN520 SDAPMUW-512G size: 476.94 GiB block-size: physical: 512 B 
    logical: 512 B speed: 15.8 Gb/s lanes: 2 rotation: SSD serial: <filter> 
    rev: 20250000 temp: 30.9 C scheme: GPT 
Partition:
    ID-1: / raw-size: 476.64 GiB size: 468.16 GiB (98.22%) 
    used: 70.32 GiB (15.0%) fs: ext4 dev: /dev/nvme1n1p2 maj-min: 259:2 
    ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%) 
    used: 316 KiB (0.1%) fs: vfat dev: /dev/nvme1n1p1 maj-min: 259:1 
Swap:
    Alert: No Swap data was found. 
Sensors:
    System Temperatures: cpu: 32.5 C mobo: 0.0 C gpu: amdgpu temp: 32.0 C 
    Fan Speeds (RPM): cpu: 0 
Info:
    Processes: 348 Uptime: 46m wakeups: 3 Memory: 14.93 GiB 
    used: 2.09 GiB (14.0%) Init: systemd v: 247 tool: systemctl Compilers: 
    gcc: 10.2.0 clang: 11.1.0 Packages: 1443 pacman: 1438 lib: 440 flatpak: 5 
    Shell: Bash v: 5.1.0 running-in: konsole inxi: 3.3.03  

Does anybody have any idea how to fix this annyoing problem? Any help would be really appreciated! My current “workaround” is to only shut off the monitor when closing the laptop lid.

And thanks to everyone reading this thread!

Does it happen on AC & BAT?

Sound like that WWAN slot is powered down on suspend.
Not sure if you can have an influence on this.

Is TLP installed? I would try disabling any PCIe power-saving by adding it to the blacklist in /etc/tlp.conf

RUNTIME_PM_BLACKLIST

Yes, it happens on BAT & AC.

That’s what I was afraid of.

TLP is installed, but I never actually used it. Not sure if I did it right: I just added
RUNTIME_PM_BLACKLIST="05:00.0"
somewhere in the middle on the config file. So far it didn’t change the suspend behaviour.

Did you try other kernels like 5.10?

Try to get some help on the Lenovo forums maybe:

https://forums.lenovo.com/t5/Other-Linux-Discussions/bd-p/Special_Interest_Linux

When I set up Manjaro in the beginning, Kerne 5.10 was installed, which had the same problem. But I will give it a shot with an older kernel then that, maybe it helps.

I will try to get some support there, maybe they can help. Thank you for the link!

I’m pretty sure this is the same bug in amdgpu myself and others are suffering from.
It’s apparently been introduced in latest kernels (5.11 and 5.10 series).
For me 5.11.6 works fine (it contains a fix, which was removed again later for some reason).
5.12 is supposed to work eventually, but I guess it will be backported to 5.11 series, as well.

For now, you can either experiment and try to go back to an older kernel (like the aforementioned 5.11.6), or you deactivate suspend and just wait it out and hope for the best.

Hey,
Have you checked your Bios?
You can set the sleep mode from win10 to Linux. Maybe this can solve the problem.

@Dino-Fossil
I just tried your suggestion with kernel 5.9.16 since I couldn’t find 5.11.6 in the MHWD settings (and I have no clue how to install a different kernel manually). Same outcome. But yes, on boot and shutdown I get some amdgpu errors.

@mailmemore
Yep, already did that :wink:

You can downgrade easily if it’s still in Pacman’s cache via
sudo pacman -U /var/cache/pacman/pkg/linux511-5.11.6-1-x86_64.pkg.tar.zst
For me that was the case. Don’t know about your system, however.

And that is, of course, if you are affected by said bug. But the symptoms kinda point to it.

@Dino-Fossil
I finally had time and downgraded the kernel, which worked. But sadly the problem is still there.

But I tried something different:
I cleared up some space on my Windows 10 drive - the one that came with pre-installed with the laptop - and installed Manjaro KDE there. Did all the available updates including the kernel, tried to suspend and it worked perfect. Wich means that the problem is either the other drive itself or the WWAN slot where it’s installed.

Not sure how to approach this problem. Maybe I’ll just “switch” the drives and install Manjaro on the Windows 10 drive and vice versa. It wouldn’t really be an optimal solution for me, but since I’m really running out of ideas what else to try it may be the only possibility.

I also think this is because of the slow being powered down during standby and then when you resume, it is not (yet) powered on again when it tries to access the drive. I’m wondering if it’s officially supported by lenovo to put an nvme into the slot rather than a wwan device :slight_smile:

Can’t you just physically switch them to try it? It’s both and M.2 slot I guess? (Maybe don’t listen to me here. I’m not responsible for any damage during that process :wink: )
Wondering if windoze can deal with this.

Weeeell, not officially supported, but I read the info that it’s working on that official Lenovo forum where you posted the link, written by an admin over there :wink:

Only if I cut one of them off in the middle :sweat_smile: One of them is a 2280 SATA (Windows) and the other is a 2242 NVME (at least I think so).

I’m only using Windows for my DAW for recording music, so I don’t boot it up very often. It’s just convenient to have all the personal files like music, pictures etc. on the Win-drive, since it’s the bigger one and then be able to access them from both OSes. And, you know, going through all the effort again to configure everything how you like it etc…

1 Like

Here’s the last update for you guys, and just in case anybody else may face the same problem:

After some more hours of using Google and trying out stuff, I just did backups of my files and decided to go for the easiest solution: I installed Manjaro on the pre-installed drive and Win 10 on the drive in the WWAN-slot. Now suspension is working fine on both Manjaro and Windows. Seems like Windows can handle it somehow :man_shrugging:

Thanks for all your help and afford!

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.