You are not logged in.

#1 2026-07-06 21:41:37

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

system lag after resuming from deep s2idle (PC10)

Hello everyone,

I am experiencing severe interface lag and extreme system-wide sluggishness on my Lenovo ThinkPad X9-15 (Intel Lunar Lake) after resuming from a long s2idle suspend (more then 4 hours). The lags last about 30 seconds.

Hardware & Software:
1)Laptop: Lenovo ThinkPad X9-15 Gen 1
2)CPU: Intel Core Ultra 7 258 V
3)GPU: Intel Arc Graphics (using the xe driver)
4)Kernel: 7.2.0-rc1-1-mainline (compiled from AUR)
5)Firmware: linux-firmware
6)Environment: Wayland (Hyprland also tried niri)

The Issue:
If I close the lid for a short period, the laptop wakes up and performs normally. However, if the laptop stays in s2idle long enough for the CPU package to drop into the deepest sleep state (PC10), waking it up results in extreme lagging. The UI stutters heavily, inputs are delayed.

Diagnostics & Logs:
1) There are no kernel panics, oops, or soft/hard lockups. (/sys/fs/pstore/ is completely empty.)
2) I have tried to find something wrong in journalctl or dmesg, but didn't
3) cat /sys/power/mem_sleep
[s2idle]
There is no setting in bios to change sleep mode from Windows to Linux

What I have already tried:
1) reinstall system
2) clear bios and ec
3) set intel_idle.max_cstate to 2 (and this helps, but battery leaks very fast
4) change /proc/acpi/wakeup
5) set other flags ( nvme.noacpi=1 nvme_core.default_ps_max_latency_us=0 amd_iommu=off iommu=soft pcie_aspm=off xe.enable_psr=0) doesn't help
6) kernel, bios, firmware is up to date

It looks like a fundamental BIOS/Firmware bug from Lenovo regarding PC10 residency on Lunar Lake.
Has anyone else with Lunar Lake architecture encountered this specific S0ix/PC10 restore bug? Are there any specific xe module parameters or kernel boot arguments to force proper frequency scaling upon s2idle resume?

Any insights would be greatly appreciated.

Last edited by Semyon0101 (2026-07-06 21:43:24)

Offline

#2 2026-07-07 06:46:31

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

CPU locked at minimal frequencies?

cpupower frequency-infocpupower frequency-info

set intel_idle.max_cstate to 2 (and this helps, but battery leaks very fast

https://wiki.archlinux.org/title/Intel_ … up_from_S3

The lags last about 30 seconds.

Maybe altering the c-state limit forth and back after the the sleep (ultimately using a hook) can shortcut this?

Online

#3 2026-07-07 07:45:57

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

I will make a test with cstate =4. It's take a too much time.
But I can't understand

altering the c-state limit forth and back after the the sleep

This does not have the same effect as configuring grub?

Last edited by Semyon0101 (2026-07-07 07:48:00)

Offline

#4 2026-07-07 13:41:32

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

 cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  energy performance preference: power
  hardware limits: 400 MHz - 4.70 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 400 MHz and 4.70 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 925 MHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes

cstate = 4 doesn't solve issue

Offline

#5 2026-07-07 14:41:43

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

This does not have the same effect as configuring grub?

As you figured

set intel_idle.max_cstate to 2 (and this helps, but battery leaks very fast

So instead of having that all the time the idea would be to only toggle it either during the s2idle of after the wakeup (to kick the CPU in the butt)
Pay close attention to the end of that paragraph.

Online

#6 2026-07-07 20:48:05

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

Doesn't help
I write in /usr/lib/systemd/system-sleep/99-awake.sh

#!/bin/bash

if [ "$1" = "post" ]; then 
	
		echo "[$(date)] starts seting 2 c-state" >> /var/log/test.txt
		sudo usr/bin/cpupower idle-set -D 2
		echo "[$(date)] ends seting 2 c-state" >> /var/log/test.txt
		sleep 2
		echo "[$(date)] starts clearing c-state" >> /var/log/test.txt
		sudo /usr/bin/cpupower idle-set -E
		echo "[$(date)] ends clearing c-state" >> /var/log/test.txt
fi
exit 0

But file was executed (because there is logs in /var/log/test.txt)

Offline

#7 2026-07-07 20:58:40

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

sudo usr/bin/cpupower idle-set -D 2

No sudo  and also the relative path there might be wrong (you lack a "/")

I'd try this manually before and start w/ limiting the c-states ahead of the sleep

Online

#8 2026-07-07 21:20:33

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

Maybe you mean

after the wakeup

not

ahead of the sleep

. Because then the whole point of battery live is lost.

Offline

#9 2026-07-07 21:31:25

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

s2 should™ still completely power down the CPU - did you check whether the limited c-state has actually impact on the battery *during* the sleep?

Online

#10 2026-07-07 21:56:13

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

 cat /sys/module/intel_idle/parameters/max_cstate 
9 

did you check whether the limited c-state has actually impact on the battery *during* the sleep?

short answer - "no", but in https://3.bp.blogspot.com/-g1psqqL8o5M/ … states.png
I make a conclusion, that c-state impact on battery. Maybe yes cpu consumes the most power, but others also consume much less energy

Last edited by Semyon0101 (2026-07-07 21:57:21)

Offline

#11 2026-07-07 22:00:28

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

Yes of course it has - while the system is running.
Hence the idea to only limit it around the sleep.

Online

#12 2026-07-08 08:27:40

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

Okay, my mistake. I put it wrong. I don't want to solve the problem in any way. I have a desire to find out what's going on with the laptop in general.

Offline

#13 2026-07-08 13:24:01

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

Was #4 called during the lagginess?
925MHz doesn't look overly idling but

current CPU frequency: Unable to call hardware

is a bit irritating.
Do you get higher frequencies when stressing the CPU during the laggy period?

Do you have the same issues w/ the performance scheduler?

Online

#14 2026-07-08 18:27:57

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

I found in dmesg this:

 [33507.858186] xhci_hcd 0000:00:14.0: Wakeup enabled by ACPI
[33507.870261] ACPI: \_SB_.PC00.XHCI: PM: Power state change: D0 -> D3hot
[33507.871417] ACPI: \_SB_.PC00.LPCB.EC__.PUBS: ACPI: PM: Power resource still in use
[33507.871432] ACPI: \_SB_.PC00.XHCI: PM: Power state changed to D3hot
[33522.289860] ACPI: \_SB_.PC00.TDM0: ACPI: utils: Return value [4]
[33522.290114] ACPI: \_SB_.PC00.TDM0: ACPI: utils: Return value [4]
[33522.290148] acpi device:5c: Enabling wakeup power (count 0)
[33522.290209] acpi device:5c: Wakeup power enabled
[33522.290236] ACPI: \_SB_.PC00.TDM0: PM: GPE8F enabled for wakeup
[33522.290249] thunderbolt 0000:00:0d.2: Wakeup enabled by ACPI
[33522.302166] ACPI: \_SB_.PC00.TDM0: PM: Power state change: D0 -> D3cold
[33522.326878] ACPI: \_SB_.PC00.D3C_: ACPI: PM: Power resource turned off
[33522.326895] ACPI: \_SB_.PC00.TDM0: PM: Power state changed to D3cold 

System wake up in 22504. This looks that system did something wrong in this period from 507 till 522. About 15 seconds, this is very similar to the time of the laptop's lags

I'll try to take a deeper look at the cpu frequency in the next sleep

Last edited by Semyon0101 (2026-07-08 18:32:25)

Offline

#15 2026-07-08 19:53:05

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

TDM0 certainly takes its time to respond, is there anything in the userspace during this (sudo journalctl -b)?

There is no setting in bios to change sleep mode from Windows to Linux

Sanity check: dualboot system?

Online

#16 2026-07-08 19:58:43

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

Unfortunately, I've clogged up journalctl too much using frequency change commands, so I can't get anything useful from there. I will take measurements in next next sleep.

dualboot system?

- no

Offline

#17 2026-07-09 08:05:25

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

You was right, the cpu frequencies is too low.
I run in terminal,

 stress -c 8 

then

 sudo python3 /usr/lib/throttled/throttled.py --monitor
[sudo] password for semyon: 
[I] Detected CPU architecture: Intel LunarLake
[I] Trying to unlock MSR allow_writes.
[I] Testing if undervolt is supported...
[I] Testing if HWP is supported...
[I] Loading config file.
[I] Starting main loop.
[D] Undervolt offsets: CORE: 0.00 mV | GPU: 0.00 mV | CACHE: 0.00 mV | UNCORE: 0.00 mV | ANALOGIO: 0.00 mV
[D] IccMax: CORE: 0.00 A | GPU: 0.00 A | CACHE: 0.00 A
[D] Realtime monitoring of throttling causes:

[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.4 W - Graphics: 0.1 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.0 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.0 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.0 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.0 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.0 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.0 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.4 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.4 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.4 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.1 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.3 W - Graphics: 0.1 W - DRAM: 0.1 W - Total[BATTERY] Thermal: OK - Power: LIM - Current: LIM - Cross-domain (e.g. GPU): OK  ||  VCore: 591 mV - Package: 3.2 W - Graphics: 0.0 W - DRAM: 0.0 W - Total[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 633 mV - Package: 8.7 W - Graphics: 0.0 W - DRAM: 0.0 W - Total: [BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 611 mV - Package: 11.7 W - Graphics: 0.0 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 611 mV - Package: 11.5 W - Graphics: 0.0 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 598 mV - Package: 11.9 W - Graphics: 0.1 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 621 mV - Package: 11.9 W - Graphics: 0.2 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 586 mV - Package: 11.7 W - Graphics: 0.1 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 631 mV - Package: 11.6 W - Graphics: 0.0 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 631 mV - Package: 11.7 W - Graphics: 0.0 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 608 mV - Package: 12.3 W - Graphics: 0.3 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 643 mV - Package: 11.6 W - Graphics: 0.0 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 596 mV - Package: 12.2 W - Graphics: 0.0 W - DRAM: 0.0 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 608 mV - Package: 11.7 W - Graphics: 0.2 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 608 mV - Package: 12.0 W - Graphics: 0.2 W - DRAM: 0.1 W - Total:[BATTERY] Thermal: OK - Power: OK - Current: OK - Cross-domain (e.g. GPU): OK  ||  VCore: 596 mV - Package: 12.3 W - Graphics: 0.2 W - DRAM: 0.1 W - Total: 

and then

 sudo turbostat --show PkgWatt,CorWatt,Bzy_MHz,Avg_MHz,PkgTmp
[sudo] password for semyon: 
turbostat version 2026.04.21 - Len Brown <lenb@kernel.org>
Kernel command line: BOOT_IMAGE=/vmlinuz-linux-mainline root=UUID=6eafd066-560d-425d-80f0-2066a0c3d662 rw rootfstype=ext4 loglevel=3 quiet "acpi_osi=Windows 2020" ignore_loglevel debug log_buf_len=16M "dyndbg=file drivers/acpi/* +p" iomem=relaxed pcie_port_pm=off
CPUID(0): GenuineIntel 0x23 CPUID levels
CPUID(1): family:model:stepping 0x6:bd:1 (6:189:1) microcode 0x126
CPUID(0x80000000): max_extended_levels: 0x80000008
CPUID(1): SSE3 MONITOR SMX EIST TM2 No-HV TSC MSR ACPI-TM HT TM
CPUID(6): APERF, TURBO, DTS, PTM, HWP, HWPnotify, HWPwindow, HWPepp, HWPpkg, EPB
cpu0: MSR_IA32_MISC_ENABLE: 0x00850089 (TCC EIST MWAIT PREFETCH TURBO)
CPUID(7): No-SGX Hybrid
CPUID(0x15): eax_crystal: 2 ebx_tsc: 172 ecx_crystal_hz: 38400000
TSC: 3302 MHz (38400000 Hz * 172 / 2 / 1000000)
CPUID(0x16): base_mhz: 3300 max_mhz: 3700 bus_mhz: 100
cpu0: MSR_PLATFORM_INFO: 0x804043df0812100
4 * 100.0 = 400.0 MHz max efficiency frequency
33 * 100.0 = 3300.0 MHz base frequency
cpu0: MSR_TURBO_RATIO_LIMIT: 0x2a2a2a2a2a2d3030
42 * 100.0 = 4200.0 MHz max turbo 8 active cores
42 * 100.0 = 4200.0 MHz max turbo 7 active cores
42 * 100.0 = 4200.0 MHz max turbo 6 active cores
42 * 100.0 = 4200.0 MHz max turbo 5 active cores
42 * 100.0 = 4200.0 MHz max turbo 4 active cores
45 * 100.0 = 4500.0 MHz max turbo 3 active cores
48 * 100.0 = 4800.0 MHz max turbo 2 active cores
48 * 100.0 = 4800.0 MHz max turbo 1 active cores
cpu0: MSR_SECONDARY_TURBO_RATIO_LIMIT: 0x2525252525252525
37 * 100.0 = 3700.0 MHz max turbo 8 active cores
37 * 100.0 = 3700.0 MHz max turbo 7 active cores
37 * 100.0 = 3700.0 MHz max turbo 6 active cores
37 * 100.0 = 3700.0 MHz max turbo 5 active cores
37 * 100.0 = 3700.0 MHz max turbo 4 active cores
37 * 100.0 = 3700.0 MHz max turbo 3 active cores
37 * 100.0 = 3700.0 MHz max turbo 2 active cores
37 * 100.0 = 3700.0 MHz max turbo 1 active cores
cpu0: MSR_CONFIG_TDP_NOMINAL: 0x00000016 (base_ratio=22)
cpu0: MSR_CONFIG_TDP_LEVEL_1: 0x00100040 (PKG_MIN_PWR_LVL1=0 PKG_MAX_PWR_LVL1=0 LVL1_RATIO=16 PKG_TDP_LVL1=64)
cpu0: MSR_CONFIG_TDP_LEVEL_2: 0x002100f0 (PKG_MIN_PWR_LVL2=0 PKG_MAX_PWR_LVL2=0 LVL2_RATIO=33 PKG_TDP_LVL2=240)
cpu0: MSR_CONFIG_TDP_CONTROL: 0x00000000 ( lock=0)
cpu0: MSR_TURBO_ACTIVATION_RATIO: 0x00000015 (MAX_NON_TURBO_RATIO=21 lock=0)
cpu0: cpufreq driver: intel_pstate
cpu0: cpufreq governor: powersave
cpufreq intel_pstate no_turbo: 0
cpu0: MSR_MISC_PWR_MGMT: 0x000030c2 (ENable-EIST_Coordination ENable-EPB DISable-OOB)
cpu0: MSR_PM_ENABLE: 0x00000001 (HWP)
cpu0: MSR_HWP_CAPABILITIES: 0x01131a37 (high 55 guar 26 eff 19 low 1)
cpu0: MSR_HWP_REQUEST: 0xff003705 (min 5 max 55 des 0 epp 0xff window 0x0 pkg 0x0)
cpu0: MSR_HWP_REQUEST_PKG: 0x8000ff01 (min 1 max 255 des 0 epp 0x80 window 0x0)
cpu0: MSR_HWP_INTERRUPT: 0x00000005 (EN_Guaranteed_Perf_Change, Dis_Excursion_Min)
cpu0: MSR_HWP_STATUS: 0x00000000 (No-Guaranteed_Perf_Change, No-Excursion_Min)
cpu0: EPB: 15 (powersave)
cpu0: MSR_IA32_POWER_CTL: 0x00e4005b (C1E auto-promotion: ENabled)
cpu0: MSR_PKG_CST_CONFIG_CONTROL: 0x74008008 (UNdemote-C1, demote-C1, locked, pkg-cstate-limit=8 (unlimited))
/dev/cpu_dma_latency: 2000000000 usec (default)
current_driver: intel_idle
current_governor: menu
current_governor_ro: menu
cpu0: POLL: CPUIDLE CORE POLL IDLE
cpu0: C1ACPI: ACPI FFH MWAIT 0x0
cpu0: C2ACPI: ACPI FFH MWAIT 0x21
cpu0: C3ACPI: ACPI FFH MWAIT 0x60
cpu0: MSR_PKGC6_IRTL: 0x00000000 (NOTvalid, 0 ns)
cpu0: MSR_PKGC10_IRTL: 0x00000000 (NOTvalid, 0 ns)
Uncore Frequency package0 die0: 400 - 4600 MHz (400 - 4600 MHz) 400 MHz
RAPL: 15420 sec. Joule Counter Range, at 17 Watts
intel-rapl:0: package-0 28.0s:29W,max:17W 2.4ms:44W
intel-rapl:0/intel-rapl:0:2: dram disabled
intel-rapl:0/intel-rapl:0:0: core disabled
intel-rapl:0/intel-rapl:0:1: uncore disabled
intel-rapl-mmio:0: package-0 28.0s:29W,max:17W 2.4ms:44W
intel-rapl-mmio:0/intel-rapl-mmio:0:0: dram disabled
cpu0: MSR_RAPL_POWER_UNIT: 0x000a0e03 (0.125000 Watts, 0.000061 Joules, 0.000977 sec.)
cpu0: MSR_PKG_POWER_INFO: 0x00000088 (17 W TDP, RAPL 0 - 0 W, 0.000000 sec.)
cpu0: MSR_PKG_POWER_LIMIT: 0x42816000dd80e8 (UNlocked)
cpu0: PKG Limit #1: ENabled (29.000 Watts, 28.000000 sec, clamp ENabled)
cpu0: PKG Limit #2: ENabled (44.000 Watts, 0.002441* sec, clamp DISabled)
cpu0: MSR_VR_CURRENT_CONFIG: 0x000002f8
cpu0: PKG Limit #4: 95.000000 Watts (UNlocked)
cpu0: MSR_DRAM_POWER_LIMIT: 0x00000000 (UNlocked)
cpu0: DRAM Limit: DISabled (0.000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP0_POLICY: 0
cpu0: MSR_PP0_POWER_LIMIT: 0x00000000 (UNlocked)
cpu0: Cores Limit: DISabled (0.000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP1_POLICY: 0
cpu0: MSR_PP1_POWER_LIMIT: 0x00000000 (UNlocked)
cpu0: GFX Limit: DISabled (0.000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_IA32_TEMPERATURE_TARGET: 0x0f640000 (85 C) (100 default - 15 offset)
cpu0: MSR_IA32_PACKAGE_THERM_STATUS: 0x88460c00 (30 C)
cpu0: MSR_IA32_PACKAGE_THERM_INTERRUPT: 0x02000003 (100 C, 100 C)
cpu0: MSR_MISC_FEATURE_CONTROL: 0x00000000 (L2-Prefetch L2-Prefetch-pair L1-Prefetch L1-IP-Prefetch)
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
399	400	30	3.20	1.58
399	400	30	3.20	1.58
399	400
399	400
399	400
399	400
399	400
399	400
399	400
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
399	400	30	3.17	1.59
399	400	30	3.17	1.59
399	400
399	400
399	400
399	400
399	400
398	400
399	400
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
399	400	30	3.12	1.59
399	400	30	3.12	1.59
399	400
399	400
399	400
399	400
399	400
399	400
399	400
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
399	400	31	3.22	1.59
399	400	31	3.22	1.59
399	400
399	400
399	400
399	400
399	400
399	400
399	400
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
399	400	31	3.12	1.59
399	400	31	3.12	1.59
399	400
399	400
399	400
399	400
399	400
399	400
399	400
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
1159	1162	37	6.91	5.30
1013	1016	37	6.91	5.30
1014	1016
1013	1016
1013	1016
1305	1309
1305	1309
1305	1309
1305	1309
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
2100	2105	40	11.75	9.99
1717	1721	40	11.75	9.99
1729	1733
1726	1730
1728	1732
2476	2481
2476	2481
2476	2481
2476	2481
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
2113	2118	42	11.95	10.07
1740	1744	42	11.95	10.07
1759	1763
1754	1758
1759	1763
2474	2480
2474	2480
2474	2480
2474	2480
Avg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
2155	2160	43	12.14	10.36
1817	1821	43	12.14	10.36
1827	1831
1825	1829
1827	1832
2485	2491
2485	2491
2485	2491
2485	2491
^CAvg_MHz	Bzy_MHz	PkgTmp	PkgWatt	CorWatt
2161	2166	45	12.05	10.42
1831	1835	45	12.05	10.42
1839	1843
1838	1842
1839	1844
2486	2492
2486	2492
2486	2492
2486	2492 

At first time when the laptop woke up, The energy use was locked at 3.2 W and the frequencies of the all core of the cpu was locked at 400 MHz.

Ps. I have installed throttled before the sleep and

 systemctl status throttled
● throttled.service - Stop Intel throttling
     Loaded: loaded (/usr/lib/systemd/system/throttled.service; enabled; pr>
     Active: active (running) since Wed 2026-07-08 22:20:27 MSK; 12h ago
 Invocation: c760ca1362b34ffc8d4cd4c5a1cfea3c
   Main PID: 580 (python3)
      Tasks: 2 (limit: 37772)
     Memory: 27.9M (peak: 30M)
        CPU: 215ms
     CGroup: /system.slice/throttled.service
             └─580 python3 /usr/lib/throttled/throttled.py

Jul 08 22:20:27 thinkpad-x9-15 (throttled.py)[580]: throttled.service: Load>
Jul 08 22:20:27 thinkpad-x9-15 (throttled.py)[580]: throttled.service: Load>
Jul 08 22:20:27 thinkpad-x9-15 (throttled.py)[580]: throttled.service: Load>
Jul 08 22:20:27 thinkpad-x9-15 (throttled.py)[580]: throttled.service: Exec>
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Detected CPU architec>
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Trying to unlock MSR >
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Testing if undervolt >
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Testing if HWP is sup>
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Loading config file.
Jul 08 22:20:27 thinkpad-x9-15 throttled.py[580]: [I] Starting main loop. 

It didn't show any error.

Last edited by Semyon0101 (2026-07-09 08:06:59)

Offline

#18 2026-07-11 13:23:57

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

I solved the issue wrote a systemd service

[Unit]
Description=Solving the issue with lags after sleep
DefaultDependencies=no
Before=sleep.target supend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target
StopWhenUnneeded=yes

[Service]
Type=oneshot
RemainAfterExit=yes
Environment="State_File=/run/power_profile.state"
ExecStart=/bin/bash -c 'powerprofilesctl get > ${State_File}; powerprofilesctl set performance; powerprofilesctl get; cat ${State_File}'
ExecStop=/bin/bash -c 'powerprofilesctl get; cat ${State_File}; powerprofilesctl set $(cat ${State_File}); rm -f ${State_File};'

[Install]
WantedBy=sleep.target suspend.target hibernate.target hybrid-sleep.target suspend-then-hibernate.target

I found that in performance mode there is no lags.

Thank seth very much.

Last edited by Semyon0101 (2026-07-11 13:27:30)

Offline

#19 Today 06:50:30

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

After a few days, I saw that lags didn't disappeared. Performence mode just reduced the lag time.

Offline

#20 Today 07:47:02

Semyon0101
Member
Registered: 2026-07-06
Posts: 13

Re: system lag after resuming from deep s2idle (PC10)

Before suspend

sudo rdmsr -x 0x19C
88310000

During the lag

sudo rdmsr -x 0x19C
88463c00

After the lag

sudo rdmsr -x 0x19C
88352800

The 10-th bit is Power Limitation Status
The 11-th bit is Power Limitation log
Before sleep they were 00
During the lag were 11
After the lag became 10

I tied to disable BD PROCHOT - unsuccessful

cat /sys/kernel/security/lockdown -pP
[none] integrity confidentiality
sudo cat /sys/module/msr/parameters/allow_writes
on

Add to grub msr.allow_writes=on, but

sudo rdmsr 0x1FC
ec005b
sudo wrmsr -a 0x1FC 0xec005a
sudo rdmsr 0x1FC
ec005b

First bit (BD PROCHOT) didn't change, it still active

Offline

#21 Today 13:44:08

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 76,833

Re: system lag after resuming from deep s2idle (PC10)

Okay, my mistake. I put it wrong. I don't want to solve the problem in any way. I have a desire to find out what's going on with the laptop in general.

That aside, have you tried to limit the c-state around the sleep?

Online

Board footer

Powered by FluxBB