Fix verified on affected hardware -- 7.1.9 clean on both trigger paths,
including with the NVIDIA driver loaded.

I filed comment #9 here (ThinkPad P1 Gen 8, Arrow Lake-P [8086:7d51], hybrid
graphics) reporting hard freezes on 7.0.0-27 and the OEM 7.0.0-100x kernels.
That machine is now fixed. Adding test data in support of the cherry-pick
requests in #16 and #17, since so far this bug has no verified result from a
kernel that actually carries the fix -- ieatlint confirmed in #16 that the
patch applies, but explicitly did not test it.


WHY 7.0.0-x CANNOT BE FIXED BY WAITING
--------------------------------------

As stated in #16, the fix is mainline 062499cc4813 ("drm/i915/mtl+: Enable PPS
before PLL", Imre Deak), with stable backport af128ca139d6. I verified the tag
ancestry locally in the upstream tree before switching:

    062499cc4813   ->   first tag: v7.2-rc5
    af128ca139d6   ->   first tag: v7.1.6

7.0.y never received the backport -- the series went EOL at 7.0.14. So every
"still broken on 7.0.x" report in this bug (#10, #13, #17) comes from a kernel
that never had the fix, and resolute's 7.0.0-x will not acquire it on its own.
A cherry-pick is the only route.


TEST RESULTS
------------

ThinkPad P1 Gen 8 (21Q9S28R00), Arrow Lake-P [8086:7d51], BIOS N4EET24W 1.10 /
EC 1.08, Ubuntu 26.04, KDE/Wayland, internal eDP-1 (pipe A / DDI A / PHY A),
undocked, on AC. Kernel is stock mainline 7.1.9-070109-generic from
kernel.ubuntu.com, no local patches.

    Date         Trigger                NVIDIA        Duration   Result
    -----------  ---------------------  ------------  ---------  ------
    24./25.08.   idle/DPMS, no suspend  no (taint 0)   11h 31m    clean
    25.08.       idle/DPMS, no suspend  yes, 595.84     1h 52m    clean
    27./28.08.   s2idle, one long dwell yes, 595.84    15h 29m    clean

    "idle/DPMS, no suspend" = machine left running, panel powered down through
    inactivity, zero "PM: suspend entry" in the journal for the whole window.

Zero hits in each case, both inside the test window and across the whole boot,
for: PHY A, DDI BUF, DP idle patterns, pll hw state mismatch, flip_done,
commit wait -- and zero i915 *ERROR*, zero NVRM/Xid, zero WARNING/BUG/Oops.

Both trigger paths in this bug are therefore covered: the long s2idle dwell of
the original title, and the display-off-through-inactivity-without-suspend case
the reporter described in comment #2, which is the one that froze this machine.

For scale: on 7.0.0-27-generic the same machine, undocked and on AC, hard-froze
four times in three days (2026-07-06 x2, 07-07, 07-08), the best-documented one
after ~102 minutes of no interaction -- each ending with the journal cut off
mid-line and a dirty bit on the next boot.


THE FIRMWARE ALTERNATIVE HAS BEEN RULED OUT -- INDEPENDENTLY
------------------------------------------------------------

My BIOS went 1.09 -> 1.10 on 2026-08-22, so on my machine alone "the firmware
fixed it" would remain arguable. It does not survive kdekto's control
experiment in upstream drm/i915 issue #16098:

--> https://gitlab.freedesktop.org/drm/i915/kernel/-/work_items/16098

Near-identical hardware (ThinkPad T1g Gen 8, same 8086:7d51, same BIOS
N4EET24W 1.10), Fedora stock kernels, no out-of-tree modules:

    7.1.9    4/4 clean s2idle cycles: 135 / 109 / 119 / 1001 min
             0 i915 *ERROR* lines over a 24 h boot, no taint

    7.0.6    crash after 123 min, one second after "PM: suspend exit"
             51 *ERROR* lines, port_clock expected 810000, found 61440

He reinstalled the older build from Koji specifically so that the firmware
would be identical in both halves. The kernel is the only remaining variable.


NOTE FOR THE HYBRID-GRAPHICS REPORTERS HERE
-------------------------------------------

Most machines in this bug (#4, #5, #6, #9, #13, #17) run an NVIDIA dGPU
alongside, so: nvidia 595.84 builds and runs fine against 7.1.x. Two of the
three runs above have it loaded (tainted = 12288, i.e. out-of-tree + unsigned
only), with the display still going through the iGPU.

It does NOT build against 7.2 -- both 595.84 and 610.43.02 fail there
with:

    nvidia/os-interface.c: error: implicit declaration of function 'strncpy'
                           [-Wimplicit-function-declaration]

So for anyone moving to a mainline kernel to get out of this bug today, the
7.1.x series is the one to pick.


REQUEST
-------

Please cherry-pick 062499cc4813 into the resolute 7.0 kernel -- two hunks in
drivers/gpu/drm/i915/display/intel_ddi.c, which ieatlint confirmed in #16 apply
cleanly to the 7.0 tree.

I am happy to test a proposed/SRU kernel on this hardware, and can reproduce
both the long-dwell and the idle-without-suspend scenario on request.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2150605

Title:
  `i915 Arrow Lake-S: PHY A / C10 DPLL state mismatch on resume from
  long s2idle dwell — slow wake (5-10s) with retry storm`

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2150605/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to