Bug 2399801

Summary: xe graphics runtime suspend unsupported, causing high battery drain during s2idle
Product: [Fedora] Fedora Reporter: Marius Pfeffer <marius>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 42CC: acaringi, adscvr, airlied, hdegoede, hpa, josef, kernel-maint, linville, masami256, mchehab, ptalbert, steved, suraj.ghimire7
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dmesg
none
battery delta units for 20 minutes sleep
none
fwupdtmgr output
none
gpu_pm
none
journal kernel
none
lspci output
none
lsusb output
none
rt.after
none
rt.before
none
system info
none
usb_active
none
usb_wakeup
none
ws.after
none
ws.before none

Description Marius Pfeffer 2025-09-26 20:23:35 UTC
1. Please describe the problem:
Short Summary:
Experiencing high s2idle battery drain on Fedora 42 kernel; GPU runtime PM does not suspend

Description:
Fedor 42 on my laptop drains ~1,3%/h during s2idle, which is unexpectedly high. 
The hardware is capable of reaching ~0.3%/h (tested with Ubuntu 24 live iso with 6.14.0, same BIOS/Firmware/EC)

Suspected cause:
GPU does not go into properly suspend (neither when display is blank nor in s2idle)
Intel xe GPU runtime_status stays "unsupported" and runtime_suspended_time stays 0 during screen blank and during s2idle tests.

Hardware:
Lenovo ThinkPad T14s Gen6 Intel Ultra 5 228V (Lunar Lake). lspci/lsusb will be attached.
Hardware does not support "deep" sleep (S3)

2. What is the Version-Release number of the kernel:
Fedora Linux 42 (Workstation Edition)
Kernel: 6.16.8-200.fc42.x86_64
linux-firmware: linux-firmware-20250808-1.fc42.noarch

3. Did it work previously in Fedora?
Unknown, just noticed on a fresh F42 Workstation istall


4. Can you reproduce this issue?
Read 
   `/sys/class/drm/card0/device/power/runtime_status`
   `/sys/class/drm/card0/device/power/runtime_suspended_time`
sleep for 10 minutes
   `rtcwake -m mem -s 600`
Read both parameters again

runtime_status is "unsupported", should be ""active"" during normal operation and "suspend" when it is supending (e.g. blank screen or during s2idle)
runtime_suspended_time is and stays 0, should increase during suspending


5. Does this problem occur with the latest Rawhide kernel?
Yes, reproducible with 6.17.0-0


6. Are you running any modules that not shipped with directly Fedora's kernel?:
No

7. Please attach the kernel logs.
Attached; dmesg, akeup_sources before/after, runtime_status snapshots, journal -k, NVMe APST parameter, USB autosuspend state, 20-minute s2idle battery delta

Battery delta 0,5Wh in 20 min (58Wh nominal -> 2,5%/h calculated, the 1,3%/h are reached during longer tests, like 10h and based on reported %)

Reproducible: Always

Comment 1 Marius Pfeffer 2025-09-26 20:25:57 UTC
Created attachment 2107695 [details]
dmesg

Comment 2 Marius Pfeffer 2025-09-26 20:26:44 UTC
Created attachment 2107696 [details]
battery delta units for 20 minutes sleep

Comment 3 Marius Pfeffer 2025-09-26 20:27:13 UTC
Created attachment 2107697 [details]
fwupdtmgr output

Comment 4 Marius Pfeffer 2025-09-26 20:27:43 UTC
Created attachment 2107698 [details]
gpu_pm

Comment 5 Marius Pfeffer 2025-09-26 20:28:37 UTC
Created attachment 2107699 [details]
journal kernel

journalctl -k -b

Comment 6 Marius Pfeffer 2025-09-26 20:29:05 UTC
Created attachment 2107700 [details]
lspci output

Comment 7 Marius Pfeffer 2025-09-26 20:29:36 UTC
Created attachment 2107701 [details]
lsusb output

Comment 8 Marius Pfeffer 2025-09-26 20:30:55 UTC
Created attachment 2107703 [details]
rt.after

Comment 9 Marius Pfeffer 2025-09-26 20:31:30 UTC
Created attachment 2107704 [details]
rt.before

Comment 10 Marius Pfeffer 2025-09-26 20:32:25 UTC
Created attachment 2107705 [details]
system info

Comment 11 Marius Pfeffer 2025-09-26 20:33:02 UTC
Created attachment 2107706 [details]
usb_active

Comment 12 Marius Pfeffer 2025-09-26 20:33:25 UTC
Created attachment 2107707 [details]
usb_wakeup

Comment 13 Marius Pfeffer 2025-09-26 20:33:48 UTC
Created attachment 2107708 [details]
ws.after

Comment 14 Marius Pfeffer 2025-09-26 20:34:11 UTC
Created attachment 2107709 [details]
ws.before