#1135599 linux-image-6.1.0-45-amd64:suspend to disk causes lockup on laptop

Package:
src:linux
Source:
src:linux
Submitter:
Brad Barnett
Date:
2026-05-10 18:33:04 UTC
Severity:
normal
Tags:
#1135599#5
Date:
2026-05-03 11:10:36 UTC
From:
To:
After a bookworm upgrade today to:
Linux hostname 6.1.0-45-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.170-1 (2026-04
-30) x86_64 GNU/Linux

Suspend to disk breaks.  I have:

- tested 'echo disk >/sys/power/state' directly, to bypass all other
  scripts/code

- turned on printk @ 8, as per kernel.org suggestions, with no additional
  output on console

Upon attempting to suspend to disk, the system goes into a semi-locked up
state.  It's clearly on, but eating CPU, and unwakeable.

Note that this laptop has been rock-solid with sleep to disk for 2+
years, through bullseye, into bookworm, and all related kernel changes.

.170/45 breaks it, .164/44 and prior are flawless.


I've looked at console output, and both seem mostly identical, with no
discernible pattern differences, until the console is suspended, eg:

# echo disk >/sys/power/state
[  144.328638] PM: hibernation: hibernation entry
[  144.329110] (NULL device *): firmware: direct-loading firmware i915/adlp_dmc_ver2_16.bin
[  144.329275] (NULL device *): firmware: direct-loading firmware i915/adlp_guc_70.bin
[  144.329356] (NULL device *): firmware: direct-loading firmware iwlwifi-so-a0-gf-a0.pnvm
[  144.329372] (NULL device *): firmware: direct-loading firmware regulatory.db
[  144.329404] (NULL device *): firmware: direct-loading firmware regulatory.db.p7s
[  144.329421] (NULL device *): firmware: direct-loading firmware intel/ibt-0040-0041.ddc
[  144.329447] (NULL device *): firmware: direct-loading firmware intel/sof-tplg/sof-hda-generic-2ch.tplg
[  144.329493] (NULL device *): firmware: direct-loading firmware i915/tgl_huc.bin
[  144.329936] (NULL device *): firmware: direct-loading firmware intel/ibt-0040-0041.sfi
[  144.330138] (NULL device *): firmware: direct-loading firmware iwlwifi-so-a0-gf-a0-72.ucode
[  144.345769] Filesystems sync: 0.015 seconds
[  144.347015] Freezing user space processes
[  144.348632] Freezing user space processes completed (elapsed 0.001 seconds)
[  144.348673] OOM killer disabled.
[  144.358776] PM: hibernation: Preallocating image memory
[  145.280687] PM: hibernation: Allocated 1770628 pages for snapshot
[  145.280698] PM: hibernation: Allocated 7082512 kbytes in 0.92 seconds (7698.38 MB/s)
[  145.280708] Freezing remaining freezable tasks
[  145.282043] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
[  145.282211] printk: Suspending console(s) (use no_console_suspend to debug)


With the new kernel, the laptop display goes blank after

[  145.282211] printk: Suspending console(s) (use no_console_suspend to debug)

but the the rest of the suspend process does not proceed.  It goes into a not-awake, not-suspending to disk state.

I wish I could provide more info, but so far I cannot see anything overt, except the failure to proceed with suspend to disk and locking up instead.

I notice there were a lot of ACPI changes to this kernel, and they look quite... "overhaulish" for a stable branch.

Thanks

#1135599#12
Date:
2026-05-04 06:26:42 UTC
From:
To:
Hi Brad, hi Bill,

I'm replying to both of you and both bugs in one go as I suspect they
have the same root cause. Any chance you could bisect the changes
between 6.1.164 and 6.1.170 to identify what broke suspend?

If you need instructions, here is how you can proceed (and which will
involve compiling and testing a couple of kernels):

    git clone --single-branch -b linux-6.1.y https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
    cd linux-stable
    git checkout v6.1.164
    cp /boot/config-$(uname -r) .config
    yes '' | make localmodconfig
    make savedefconfig
    mv defconfig arch/x86/configs/my_defconfig

    # test 6.1.164 to ensure this is "good"
    make my_defconfig
    make -j $(nproc) bindeb-pkg
    ... install the resulting .deb package and confirm suspend works.

    # test 6.1.170 to ensure this is "bad"
    git checkout v6.1.170
    make my_defconfig
    make -j $(nproc) bindeb-pkg
    ... install the resulting .deb package and confirm suspend does
    not work.

With that confirmed, the bisection can start:

    git bisect start
    git bisect good v6.1.164
    git bisect bad v6.1.170

In each bisection step git checks out a state between the oldest
known-bad and the newest known-good commit. In each step test using:

    make my_defconfig
    make -j $(nproc) bindeb-pkg
    ... install, verify is problem persists.

and if the problem is hit run:

    git bisect bad

and if the problem doesn't trigger run:

    git bisect good

. Please pay attention to always select the just built kernel for
booting, it won't always be the default kernel picked up by grub.

Iterate until git announces to have identified the first bad commit.

Then provide the output of

    git bisect log

In the course of the bisection you might have to uninstall previous
kernels again to not exhaust the disk space in /boot. Also in the end
uninstall all self-built kernels again.

I will keep the two bugs though distinct for now as we are not really
sure if they are duplicates.

Regards,
Salvatore

#1135599#19
Date:
2026-05-04 07:00:29 UTC
From:
To:
On it.  164 building now.

On Mon, 4 May 2026 08:26:42 +0200 Salvatore Bonaccorso <carnil@debian.org> wrote:

#1135599#24
Date:
2026-05-04 07:54:57 UTC
From:
To:
I suggest to start with this one

PM: sleep: wakeirq: harden dev_pm_clear_wake_irq() against races

<https://lkml.org/lkml/2026/2/2/1574>

Let us say I had bad experience with commit that harden code without fixing any bug,
usually that means they are not well-tested.

Cheers,
Bill.

#1135599#29
Date:
2026-05-04 09:11:01 UTC
From:
To:
    wifi: cfg80211: stop NAN and P2P in cfg80211_leave

    [ Upstream commit e1696c8bd0056bc1a5f7766f58ac333adc203e8a ]

    Seems that there is an assumption that this function should be called
    only for netdev interfaces, but it can also be called in suspend, or
    from nl80211_netlink_notify (indirectly).
    Note that the documentation of NL80211_ATTR_SOCKET_OWNER explicitly
    says that NAN interfaces would be destroyed as well in the
    nl80211_netlink_notify case.

    Fix this by also stopping P2P and NAN.

    Fixes: cb3b7d87652a ("cfg80211: add start / stop NAN commands")
    Reviewed-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
    Link: https://patch.msgid.link/20260107140430.dab142cbef0b.I290cc47836d56dd7e35012ce06bec36c6da688cd@changeid
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

 net/wireless/core.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)




# git bisect log
git bisect start
# status: waiting for both good and bad commits
# good: [779f9571ac3e3b2c969690d09e5353f56b7ed4ef] Linux 6.1.164
git bisect good 779f9571ac3e3b2c969690d09e5353f56b7ed4ef
# status: waiting for bad commit, 1 good commit known
# bad: [4931e0e1673d2592ba7ab7365a25d1248b6a41b8] Linux 6.1.170
git bisect bad 4931e0e1673d2592ba7ab7365a25d1248b6a41b8
# bad: [eb44a35b6da3f0d393ef87eb27c33626865ec2ca] ASoC: core: Exit all links before removing their components
git bisect bad eb44a35b6da3f0d393ef87eb27c33626865ec2ca
# bad: [da6b1bf764cc169cf27ff2474f315df71f698ab2] PCI: Mark ASM1164 SATA controller to avoid bus reset
git bisect bad da6b1bf764cc169cf27ff2474f315df71f698ab2
# bad: [64303b92d94c0c7845a273acd8d84b796d6f1db7] SUNRPC: auth_gss: fix memory leaks in XDR decoding error paths
git bisect bad 64303b92d94c0c7845a273acd8d84b796d6f1db7
# good: [03438554ee7b74891634069989190a4bee9f9325] PCI: mediatek: Fix IRQ domain leak when MSI allocation fails
git bisect good 03438554ee7b74891634069989190a4bee9f9325
# bad: [7fe1872ab6c465b2a20d573898e667b5e0b5d6bf] IB/cache: update gid cache on client reregister event
git bisect bad 7fe1872ab6c465b2a20d573898e667b5e0b5d6bf
# bad: [f3b70cc7994be7378c34dac01a7cfec4b001072d] PCI: Initialize RCB from pci_configure_device()
git bisect bad f3b70cc7994be7378c34dac01a7cfec4b001072d
# bad: [ad45a1c6d3c50c930ffffd76157e58598c914e62] netfilter: nft_compat: add more restrictions on netlink attributes
git bisect bad ad45a1c6d3c50c930ffffd76157e58598c914e62
# good: [40089ce7dfe3c4db9b239e89b172ee302c5f6a4f] net: mctp-i2c: fix duplicate reception of old data
git bisect good 40089ce7dfe3c4db9b239e89b172ee302c5f6a4f
# bad: [0c4f1c02d27a880b10b58c63f574f13bed4f711d] wifi: cfg80211: stop NAN and P2P in cfg80211_leave
git bisect bad 0c4f1c02d27a880b10b58c63f574f13bed4f711d
# good: [93e01e837e105299f1c259ef71f6e1ec4fe806e3] mctp i2c: initialise event handler read bytes
git bisect good 93e01e837e105299f1c259ef71f6e1ec4fe806e3
# first bad commit: [0c4f1c02d27a880b10b58c63f574f13bed4f711d] wifi: cfg80211: stop NAN and P2P in cfg80211_leave

#1135599#34
Date:
2026-05-04 12:06:59 UTC
From:
To:
Hi Brad,

[I will now drop the CC to the bug from Bill, as we do not know yet if
it is the same issue, Bill if you can test and this fixes the same for
you we can merge the two, otherwise bisecting your issue would be
helpful as well]

Thanks, that was helpful. A revert of this commit is queued upstream
as per
https://lore.kernel.org/regressions/2026042343-unhearing-thee-53d1@gregkh/

So we can expect it to be in the next update for the 6.1.y stable
series.

Regards,
Salvatore

#1135599#39
Date:
2026-05-04 12:13:28 UTC
From:
To:
If you have a kernel package somewhere, I can test it.

Otherwise, I will need some times just to clone the repo...

Cheers,
Bill.

#1135599#44
Date:
2026-05-04 12:21:24 UTC
From:
To:
Hi Bill,

I do not have one at hand. But it should be actually bit easier with
the following specific proceudre to test patches:

https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4

So once you have the 6.1.170-1 source unpackged and the requisites
fullfilled, with the attached patch, just run our test-patches script
to build a deb for you.

Attached is the revert commit picked from the current stable-queue.

Hope this helps, let me know if you encounter issues with it.

Regards,
Salvatore

#1135599#51
Date:
2026-05-04 20:49:18 UTC
From:
To:
Ah great, I managed to rebuild the bookworm kernel with this patch and now suspend to
disk work fine again.

Brad, did you try the trixie kernel or even the one in trixie-backport ?
They fail for me but I do not have enough information to do a bug report.

Thanks!
Bill.

#1135599#56
Date:
2026-05-04 20:57:54 UTC
From:
To:
No, I'm on bookworm with my laptops and don't have time to upgrade (or
test unknown configs).  I'm not sure the status of backports or trixie
for suspend, especially when you get into nuanced laptop configs.

#1135599#67
Date:
2026-05-10 18:32:37 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
linux, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1135599@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Salvatore Bonaccorso <carnil@debian.org> (supplier of updated linux package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Fri, 08 May 2026 14:16:54 +0200
Source: linux
Architecture: source
Version: 6.1.170-2
Distribution: bookworm-security
Urgency: high
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Changed-By: Salvatore Bonaccorso <carnil@debian.org>
Closes: 1135599
Changes:
 linux (6.1.170-2) bookworm-security; urgency=high
 .
   [ Ben Hutchings ]
   * rxrpc: input: Open-code skb_unshare()
   * rxrpc: Fix conn-level packet handling to unshare RESPONSE packets
   * rxrpc: Also unshare DATA/RESPONSE packets when paged frags are present
 .
   [ Salvatore Bonaccorso ]
   * xfrm: esp: avoid in-place decrypt on shared skb frags
   * Revert "wifi: cfg80211: stop NAN and P2P in cfg80211_leave"
     (Closes: #1135599)
Checksums-Sha1:
 a1d062b057167f007008a780218db12fd4e2644b 399396 linux_6.1.170-2.dsc
 82782dbfbd1c51eea3d50dc765133c7064d41cb5 1840588 linux_6.1.170-2.debian.tar.xz
 a603b3c8a3fb1937e3c9d187999ef81282412e5d 6992 linux_6.1.170-2_source.buildinfo
Checksums-Sha256:
 d2c26e2d8717841b6b699bd59fbce1c2e86ab2f68f90d62f01c6630cd419a000 399396 linux_6.1.170-2.dsc
 bc2b86351d3d6a0edef9607261653ef1793f67ab27d76951b6568115c6fe7c69 1840588 linux_6.1.170-2.debian.tar.xz
 3d85be4d5919aa7434a06b31add2107be65257981ba7f95c01fe7efdc6bbc083 6992 linux_6.1.170-2_source.buildinfo
Files:
 3e3086f954cccdddfe0f8e871cd24cf3 399396 kernel optional linux_6.1.170-2.dsc
 669865a221eaba5d2c63ef0a135e2238 1840588 kernel optional linux_6.1.170-2.debian.tar.xz
 df240a031dfcb3ba74e52117c2ec8762 6992 kernel optional linux_6.1.170-2_source.buildinfo
-----BEGIN PGP SIGNATURE-----

iQKmBAEBCgCQFiEERkRAmAjBceBVMd3uBUy48xNDz0QFAmn91L5fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDQ2
NDQ0MDk4MDhDMTcxRTA1NTMxRERFRTA1NENCOEYzMTM0M0NGNDQSHGNhcm5pbEBk
ZWJpYW4ub3JnAAoJEAVMuPMTQ89E1c8P/1nLkfs7sDj32KpQrBnx86u3yBiVyRKu
S7A13EquB41Q27oMTzU3zB+L8Q39J7UzWyRnzBYisHLXMH2VFQOO9t3YDc7p/SAo
wB3L2mSG+yGKYR29glaCmspdqx6hpLIo2UNSK/0wP3hff1ZoQw0v2Xtab7grVLbH
/s7NueXMSkgemm+PLQD6mlGJkfAxynZ6zyML1v0/gyX9n08yAQ5YsOlpukIS0yvS
cFKz1AXg+h+silapiiXA9kyZjEryWuVe22pGzj9q0hzAg4+BelRpOp5TiFpbxdrG
rzhw7jKAJ6r0uexgbr5mjZcygDILEX8OGeazFNhOQmT11czmBQc59qa55REmbI6D
63nIA+Ml/ssSO8KWh03q/UqffRjnNKLh8WPzV9QLQO1XyMWNWXPTG7Q7w7UoezaQ
Tc+zUoOuoC81FVlxpaWpnNj5kYh5B7tz6IdkiOeMujPPO25StRBYdb2lbibe87nq
G+nhZa2Sm/6o47D/33cvAdB+Gaknd6jFlOr6HGuMOG7/HwFM+W13TsNgKHjtMIr0
MdXVaCqkKLCakPyxHHzjokO+YeBHBFxnULwCWtbq7NZQOa0quSQxXegzoeACgtpU
ixEvfYrdVNqZQizbD0XLw6SmQg/iDiZOJF1nljuYfy3ojs3GXgBRm7CLpuJYp01T
L0V/B1gqWRYl
=AvzM
-----END PGP SIGNATURE-----