Lenovo Thinkpad x280 not waking up from Suspend

Ubuntu Version

24.04 LTS

Desktop Environment (if applicable)

Cinnamon

Problem Description

Hello! I am having issues with my Lenovo Thinkpad x280 being unable to turn my laptop on if I set it to suspend.

Here’s what I’ve tried so far:
In the Ubuntu Cinnamon Discord, someone had me run the command “sudo dmesg”. The following messages were in red:
[10.624600] Bluetooth: hci0: Reading support features failed (-16)
The following lines were in bold:
[10.624613] Bluetooth: hci0: HCI LE Coded PHY feature bit is set, but its usage is not supported.
[11.196887] nvme nvme0: using unchecked data buffer
[ 0.653371] resource: resource sanity check: requesting [mem 0x00000000fed10000-0x00000000fed15fff], which spans more than PNP0C02:05 [mem 0xfed10000-0xfed13fff]
[0.653382] caller snb_uncore_imc_init_box+0x7e/0xe0 mapping multiple BARs
[0.135987] MDS CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/mds.html for more details.
[0.135987] MMIO Stale Data CPU bug present and SMT on, data leak possible. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/processor_mmio_stale_data.html for more details.
[0.135987] VMSCAPE: SMT on, STIBP is required for full protection. See https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/vmscape.html for more details.

Next, they had me run the command “lscpu” to get the hardware inforamtion. I’ll post that in the Relevant System Information section.

Relevant System Information

Information from lscpu Command:

Architecture:                x86_64
  CPU op-mode(s):            32-bit, 64-bit
  Address sizes:             39 bits physical, 48 bits virtual
  Byte Order:                Little Endian
CPU(s):                      4
  On-line CPU(s) list:       0-3
Vendor ID:                   GenuineIntel
  Model name:                Intel(R) Core(TM) i5-7300U CPU @ 2.60GHz
    CPU family:              6
    Model:                   142
    Thread(s) per core:      2
    Core(s) per socket:      2
    Socket(s):               1
    Stepping:                9
    CPU(s) scaling MHz:      23%
    CPU max MHz:             3500.0000
    CPU min MHz:             400.0000
    BogoMIPS:                5399.81
    Flags:                   fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pg
                             e mca cmov pat pse36 clflush dts acpi mmx fxsr sse 
                             sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm cons
                             tant_tsc art arch_perfmon pebs bts rep_good nopl xt
                             opology nonstop_tsc cpuid aperfmperf pni pclmulqdq 
                             dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fm
                             a cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe po
                             pcnt tsc_deadline_timer aes xsave avx f16c rdrand l
                             ahf_lm abm 3dnowprefetch cpuid_fault epb pti ssbd i
                             brs ibpb stibp tpr_shadow flexpriority ept vpid ept
                             _ad fsgsbase tsc_adjust sgx bmi1 avx2 smep bmi2 erm
                             s invpcid mpx rdseed adx smap clflushopt intel_pt x
                             saveopt xsavec xgetbv1 xsaves dtherm ida arat pln p
                             ts hwp hwp_notify hwp_act_window hwp_epp vnmi md_cl
                             ear flush_l1d arch_capabilities
Virtualization features:     
  Virtualization:            VT-x
Caches (sum of all):         
  L1d:                       64 KiB (2 instances)
  L1i:                       64 KiB (2 instances)
  L2:                        512 KiB (2 instances)
  L3:                        3 MiB (1 instance)
NUMA:                        
  NUMA node(s):              1
  NUMA node0 CPU(s):         0-3
Vulnerabilities:             
  Gather data sampling:      Vulnerable
  Ghostwrite:                Not affected
  Indirect target selection: Not affected
  Itlb multihit:             KVM: Mitigation: Split huge pages
  L1tf:                      Mitigation; PTE Inversion; VMX conditional cache fl
                             ushes, SMT vulnerable
  Mds:                       Mitigation; Clear CPU buffers; SMT vulnerable
  Meltdown:                  Mitigation; PTI
  Mmio stale data:           Mitigation; Clear CPU buffers; SMT vulnerable
  Old microcode:             Not affected
  Reg file data sampling:    Not affected
  Retbleed:                  Mitigation; IBRS
  Spec rstack overflow:      Not affected
  Spec store bypass:         Mitigation; Speculative Store Bypass disabled via p
                             rctl
  Spectre v1:                Mitigation; usercopy/swapgs barriers and __user poi
                             nter sanitization
  Spectre v2:                Mitigation; IBRS; IBPB conditional; STIBP condition
                             al; RSB filling; PBRSB-eIBRS Not affected; BHI Not 
                             affected
  Srbds:                     Mitigation; Microcode
  Tsa:                       Not affected
  Tsx async abort:           Mitigation; TSX disabled
  Vmscape:                   Mitigation; IBPB before exit to userspace

What I’ve Tried

I’m new to Linux and I am not sure what to try. I have, however, tried other versions and DE’s of Ubuntu. So far, I have used Ubuntu Desktop 26.04 LTS, Ubtuntu Cinnamon 26.04 LTS (Resolute Racoon), and Ubuntu Cinnamon 24.04.4 LTS (Noble Numbat). The problem persists across all three of these versions. I was directed here by the Ubuntu Cinnamon Discord after they realized this was a Kernel issue; they think you all would be able to help. Let me know if you require any additional information to help!

Hi Violet!

Thanks for reporting your issues with Ubuntu :slight_smile:

None of the kernel log messages you mention above seem to be related to your suspend issue and so I think getting a new kernel log for our debugging would be useful to us.

I would suggest re-reporting this kernel bug through launchpad, which is where we typically track kernel bugs. To do so I would suggest the following sequence of actions on your part:

  1. Change the /etc/default/grub config file by replacing the previous GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash” with GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash loglevel=8”. This will make the kernel log a lot more messages that might be useful to us.
  2. Run sudo grub-mkconfig -o /boot/grub/grub.cfg so that those changes will be reflected on reboot.
  3. Reboot your system.
  4. Go ahead and report this bug to launchpad using apport-bug linux, which will incidentally gather a few log files that will be useful for us to debug. Don’t forget to note the link of the launchpad bug so that you can attach another kernel log later.
  5. Try a suspend-resume cycle on your laptop.
  6. If your laptop fails to resume, go ahead and restart it, and get the previous kernel log from the command sudo journalctl -k -b -1 > ~/Downloads/dmesg.log and go ahead and add it as an attachment on the launchpad bug tracker through the link you noted above. (The file is ~/Downloads/dmesg.log)

This will make it easier for us to go back-and-forth and try and solve your issue

Just FYI: update-grub is the canonical (lowercase C) way of doing that in Ubuntu because it will sense whether or not it is on EFI, and is the preferred method.

4 Likes

Thank you so much for helping!

When I tried this, I got the following error:

REDACTED config part /etc/cloud/cloud.cfg.d/99-installer.cfg, insufficient permissions
REDACTED config part /etc/cloud/cloud.cfg.d/90-installer-network.cfg, insufficient permissions
dpkg-query: no packages found matching Linux

A dialog box also popped up with the following message:

Problem in Linux

The problem cannot be reported:
This report is about a package that is not installed.

Running with sudo should fix the permissions issues, although it’s strange that the linux package doesn’t automatically work.

Maybe instead try reporting through the linux package webpage with the Report a bug button to the right. From there you can run sudo apport-collect <BUGNUM> with <BUGNUM> as the 7-digit number right below your title when the report is posted. Those two should be the equivalent of step 4.

Thank you for getting back to me, cremfuelled. Are you asking me to post the bug report before putting anything in the description and then getting the report number, then running the command in the shell? Does that automatically update the ticket if I do it in that order?

Nevermind! I have done what you said and the information has been sent here: Bug #2164961 “Lenovo Thinkpad x280 not waking from Suspend” : Bugs : linux package : Ubuntu

Sadly, I could not complete step 6. There is no file that exists on my computer called “dmesg.log” I used a search in the file manager and did a recursive search from the File System root directory for that file and nothing came up.

No problem :slight_smile: I’m glad that you found a solution