OS Name: Fedora Linux 41 (Workstation Edition Prerelease)
OS Build: (null)
OS Type: 64-bit
GNOME Version: 47
Windowing System: Wayland
Kernel Version: Linux 6.11.0-63.fc41.x86_64
Running ./s0ix-selftest-tool.sh -s gives me:
---Check S2idle path S0ix Residency---:
The system OS Kernel version is:
Linux DevStation 6.11.0-63.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Sep 15 17:48:54 UTC 2024 x86_64 GNU/Linux
---Check whether your system supports S0ix or not---:
Low Power S0 Idle is:1
Your system supports low power S0 idle capability.
---Check whether intel_pmc_core sysfs files exit---:
The pmc_core debug sysfs files are OK on your system.
---Judge PC10, S0ix residency available status---:
Test system supports S0ix.y substate
S0ix substate before S2idle:
S0i2.0 S0i2.1 S0i2.2
S0ix substate residency before S2idle:
0 0 0
The system failed to place S2idle entry command by turbostat,
please check if the suspend is failed or turbostat tool version is old
e.g. did you make turbostat tool executable or separately run S2idle command:
rtcwake -m freeze -s 15
I guess I forgot to describe the actual issue In short, nothing happens when i close the lid and when I select ‘Suspend’, the screen goes blank for a moment and then returns with lock screen. Same behavior also on Fedora 40.
This makes me wonder tho. What is the expected behavior, when your system doesn’t support S3, but you close the lid or request suspend? Is the system not meant go quiet anymore, because that’s what my boomer ass was expecting
Can you make sure you have turbostat on the system (and you can use the one that is in the S0ixSelftestTool repository that you got the test executable from).
Hopefully that will give you a fuller report - the one provided isn’t useful I’m afraid.
For your Q about suspend - it uses S0ix sleep (aka modern standby) instead (which replaces S3). Intel (and AMD) don’t support S3 on their CPUs any more - we only certify our systems with S0ix.
I can reproduce this issue on Fedora 41 beta (kernel 6.11.0-0.rc5.43.fc41.x86_64) on T14 Gen5 Intel, looks like it may be related to the network card somehow.
S0ixSelftestTool output is the same. I poked around the script and looks like this line fails: echo freeze > /sys/power/state.
Specifically, it tries to suspend the machine (screen is shutdown), fails, and returns “write error: No such file or directory” (which triggers the script error @estonian276 pasted). Looking in the journal, I see these errors:
Oct 08 20:20:26 fedora kernel: e1000e: EEE TX LPI TIMER: 00000011
Oct 08 20:20:26 fedora kernel: e1000e 0000:00:1f.6: PM: pci_pm_suspend(): e1000e_pm_suspend [e1000e] returns -2
Oct 08 20:20:26 fedora kernel: e1000e 0000:00:1f.6: PM: dpm_run_callback(): pci_pm_suspend returns -2
Oct 08 20:20:26 fedora kernel: e1000e 0000:00:1f.6: PM: failed to suspend async: error -2
Oct 08 20:20:26 fedora kernel: PM: Some devices failed to suspend, or early wake event detected
If I do rmmod e1000e, or disable Wake-On-Lan (with ethtool -s <dev> wol d) and retry the same echo command, the laptop goes to suspend (the red dot on the thinkpad logo twinkles). Looks very much like this Ubuntu bug report: networking - Suspend fails, kworker acts up, Ethernet issue e1000e - Ask Ubuntu (where I got the WOL hint from)
Curiously, disabling WOL in bios doesn’t seem to make a difference (I guess the Linux driver overrides/ignores those settings).
I also have an identical issue on my Vivobook Pro 15 OLED, running Fedora 41 (kernel 6.11.3-300.fc41.x86_64). However disabling wake-on-LAN does not fix it. This is what ./s0ix-selftest-tool.sh -s gives me:
---Check S2idle path S0ix Residency---:
The system OS Kernel version is:
Linux fedora 6.11.3-300.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct 10 19:18:36 UTC 2024 x86_64 GNU/Linux
---Check whether your system supports S0ix or not---:
Low Power S0 Idle is:1
Your system supports low power S0 idle capability.
---Check whether intel_pmc_core sysfs files exit---:
The pmc_core debug sysfs files are OK on your system.
---Judge PC10, S0ix residency available status---:
Test system supports S0ix.y substate
S0ix substate before S2idle:
S0i2.0 S0i2.1 S0i2.2
S0ix substate residency before S2idle:
0 0 0
Turbostat output:
5.075730 sec
CPU%c1 CPU%c6 CPU%c7 Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc8 Pk%pc10 SYS%LPI
10.82 57.58 26.43 21.81 0.00 0.00 0.00 0.00 0.00
6.20 91.63 0.00
5.41 92.45 0.00
5.47 92.47 0.00
4.67 93.26 0.00
5.19 92.68 0.00
3.68 93.68 0.00
4.74 92.82 0.00
5.78 91.48 0.00
11.45 0.51 47.09
11.45
7.62 0.39 77.69
7.62
46.86 1.29 40.54 21.81 0.00 0.00 0.00 0.00 0.00
46.85
7.25 0.00 88.96
7.25
10.65 0.05 80.41
10.65
6.87 0.01 88.21
6.87
8.28 89.64 0.00
7.29 88.87 0.00
CPU Core C7 residency after S2idle is: 26.43
CPU Package C-state 2 residency after S2idle is: 21.81
CPU Package C-state 3 residency after S2idle is: 0.00
CPU Package C-state 8 residency after S2idle is: 0.00
CPU Package C-state 10 residency after S2idle is: 0.00
S0ix residency after S2idle is: 0.00
Your system achieved PC2 residency: 21.81, but no PC8 residency during S2idle: 0.00
---Debug no PC8 residency scenario---:
modprobe cpufreq_stats failed
Loaded 0 prior measurements
RAPL device for cpu 0
RAPL Using PowerCap Sysfs : Domain Mask d
RAPL device for cpu 0
RAPL Using PowerCap Sysfs : Domain Mask d
Devfreq not enabled
glob returned GLOB_ABORTED
Leaving PowerTOP
Turbostat output:
3.041700 sec
CPU%c1 CPU%c6 CPU%c7 Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc8 Pk%pc10 SYS%LPI
11.26 56.76 27.69 35.53 0.00 0.00 0.00 0.00 0.00
6.17 91.50 0.00
8.05 89.62 0.00
5.88 91.93 0.00
5.10 92.66 0.00
4.79 93.05 0.00
5.79 92.07 0.00
5.13 92.38 0.00
5.67 92.17 0.00
10.69 0.12 68.69
10.69
10.45 0.63 65.71
10.45
39.36 1.02 54.95 35.53 0.00 0.00 0.00 0.00 0.00
39.35
9.32 0.72 79.09
9.32
9.63 0.14 87.46
9.63
10.37 0.02 87.22
10.37
13.93 82.71 0.00
7.61 87.36 0.00
Your CPU Core C7 residency is available: 27.69
Checking PCIe Device D state and Bridge Link state:
Available bridge device: 0000:00:01.0 0000:00:07.0 0000:00:1c.0 0000:00:1c.6 10000:e0:06.2
./s0ix-selftest-tool.sh: line 854: xxd: command not found
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
The PCIe bridge link power management state is:
./s0ix-selftest-tool.sh: line 785: 16#: invalid integer constant (error token is "16#")
0000:00:01.0
The link power management state of PCIe bridge: 0000:00:01.0 is not expected.
which is expected to be L1.1 or L1.2, or user would run this script again.
The L1SubCap of the failed 0000:00:01.0 is:
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
The L1SubCtl1 of the failed 0000:00:01.0 is:
L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
Checking PCI Devices tree diagram:
-[0000:00]-+-00.0 Intel Corporation Device 7d01
+-01.0-[01]--+-00.0 NVIDIA Corporation AD107M [GeForce RTX 4050 Max-Q / Mobile]
| \-00.1 NVIDIA Corporation AD107 High Definition Audio Controller
+-02.0 Intel Corporation Meteor Lake-P [Intel Arc Graphics]
+-04.0 Intel Corporation Meteor Lake-P Dynamic Tuning Technology
+-07.0-[02-2b]--
+-08.0 Intel Corporation Meteor Lake-P Gaussian & Neural-Network Accelerator
+-0a.0 Intel Corporation Meteor Lake-P Platform Monitoring Technology
+-0b.0 Intel Corporation Meteor Lake NPU
+-0d.0 Intel Corporation Meteor Lake-P Thunderbolt 4 USB Controller
+-0d.2 Intel Corporation Meteor Lake-P Thunderbolt 4 NHI #0
+-0e.0 Intel Corporation Volume Management Device NVMe RAID Controller Intel Corporation
+-12.0 Intel Corporation Meteor Lake-P Integrated Sensor Hub
+-14.0 Intel Corporation Meteor Lake-P USB 3.2 Gen 2x1 xHCI Host Controller
+-14.2 Intel Corporation Device 7e7f
+-14.3 Intel Corporation Meteor Lake PCH CNVi WiFi
+-15.0 Intel Corporation Meteor Lake-P Serial IO I2C Controller #0
+-15.1 Intel Corporation Meteor Lake-P Serial IO I2C Controller #1
+-16.0 Intel Corporation Meteor Lake-P CSME HECI #1
+-19.0 Intel Corporation Meteor Lake-P Serial IO I2C Controller #4
+-1c.0-[2c]----00.0 Genesys Logic, Inc GL9755 SD Host Controller
+-1c.6-[2d]----00.0 Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller
+-1f.0 Intel Corporation Device 7e02
+-1f.3 Intel Corporation Meteor Lake-P HD Audio Controller
+-1f.4 Intel Corporation Meteor Lake-P SMBus Controller
\-1f.5 Intel Corporation Meteor Lake-P SPI Controller
-[10000:e0]-+-06.0 Intel Corporation RST VMD Managed Controller
\-06.2-[e1]----00.0 Sandisk Corp WD Black SN770 / PC SN740 256GB / PC SN560 (DRAM-less) NVMe SSD
./s0ix-selftest-tool.sh: line 140: /sys/kernel/debug/dynamic_debug/control: Operation not permitted
Your system CPU Core C7, GFX RC6, PCIe Device D state and Link PM state are OK,
but still did not achieve PC8 after powertop --auto-tune
Also the module e1000e is apparently not loaded, so maybe the cause is something else? I have little experience in Linux debugging.
Probably best to create a separate thread so other folk with Vivobook’s can comment (afraid I only know my way around the Lenovo devices).
As you have a Nvidia card in there, if you’re not already using it try with the Nvidia driver as a first step (you can install it from RPMfusion). The Nouveau driver has improved massively but suspend issues can still be challenging.
After that - see if you can disable devices on the PCIe bus from the BIOS, and see if that helps. Might help you track down which is the issue.
Do you have RST enabled? Wasn’t sure what the controller was.