#1146124 src:linux: asus-laptop: Fn hotkeys no longer work on ThinkPad SL400 from Linux 7.1

#1146124#5
Date:
2026-08-30 04:59:45 UTC
From:
To:
Dear Maintainer,

Fn hotkeys on Lenovo ThinkPad SL400, which are supported by the module asus-laptop, no longer work starting from Linux 7.1. Normally when those keys/key combinations are pressed, acpi_listen/kacpimon/"evtest /dev/input/by-path/platform-asus_laptop-event" will capture related events, for example:

$ acpi_listen
^[[1;2Photkey ATK0101:00 00000032 00000000
button/mute MUTE 00000080 00000000 K
^C

Starting from Linux 7.1, there are not any related event captured by those command.

Using snapshot.debian.org, I found out that the last working kernel version is 7.0.14-1 while the first not working version is 7.1~rc2-1~exp1.

Following instructions in [1] and using /boot/config-7.0.14+deb14-amd64, a bisect resulted in:

git bisect start
# status: waiting for both 'good' and 'bad' commits
# good: [458c6079fc1d41d564c37679c8ace02cd83ee817] Linux 7.0.14
git bisect good 458c6079fc1d41d564c37679c8ace02cd83ee817
# status: waiting for 'bad' commit, 1 'good' commit known
# bad: [7fd2df204f342fc17d1a0bfcd474b24232fb0f32] Linux 7.1-rc2
git bisect bad 7fd2df204f342fc17d1a0bfcd474b24232fb0f32
# good: [028ef9c96e96197026887c0f092424679298aae8] Linux 7.0
git bisect good 028ef9c96e96197026887c0f092424679298aae8
# good: [334fbe734e687404f346eba7d5d96ed2b44d35ab] Merge tag 'mm-stable-2026-04-13-21-45' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
git bisect good 334fbe734e687404f346eba7d5d96ed2b44d35ab
# good: [cdd4dc3aebeab43a72ce0bc2b5bab6f0a80b97a5] Merge tag 'ntfs-for-7.1-rc1-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/ntfs
git bisect good cdd4dc3aebeab43a72ce0bc2b5bab6f0a80b97a5
# bad: [beaba8bfbb91e3bb3133eacacd62fd6fea515e34] Merge tag 'probes-v7.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace
git bisect bad beaba8bfbb91e3bb3133eacacd62fd6fea515e34
# good: [bea8d77e45a8b77f2beca1affc9aa7ed28f39b17] Merge tag 'staging-7.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
git bisect good bea8d77e45a8b77f2beca1affc9aa7ed28f39b17
# bad: [065c4e67cc2c40e6dd94649e8e720096fbabd4ee] Merge tag 'uml-for-7.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/uml/linux
git bisect bad 065c4e67cc2c40e6dd94649e8e720096fbabd4ee
# good: [4b0b946019e7376752456380b67e54eea2f10a7c] Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
git bisect good 4b0b946019e7376752456380b67e54eea2f10a7c
# bad: [d6116d86e58a04a9522e349c4a27145521c01ad7] platform/x86: int3472: Use local variable for LED struct access
git bisect bad d6116d86e58a04a9522e349c4a27145521c01ad7
# good: [19ebacfb442b83aa5fe75f9c6851b4edbfff3760] platform/x86: dell/dell-rbtn: Convert ACPI driver to a platform one
git bisect good 19ebacfb442b83aa5fe75f9c6851b4edbfff3760
# bad: [378500dc1313e2c06a2f675bb00ab5d7880433ba] platform/x86: asus-laptop: Register ACPI notify handler directly
git bisect bad 378500dc1313e2c06a2f675bb00ab5d7880433ba
# good: [03ae0a0d0973b9e584a05136aab08fee2ef8e455] platform/x86: uniwill-laptop: Implement USB-C power priority setting
git bisect good 03ae0a0d0973b9e584a05136aab08fee2ef8e455
# good: [b0bcf48c74cc7f72d1b6effc7cecdae871b1785e] platform/x86: toshiba_acpi: Register ACPI notify handler directly
git bisect good b0bcf48c74cc7f72d1b6effc7cecdae871b1785e
# good: [553b2ac59fbb434330287fde0cabc64bc6f11ceb] platform/x86: toshiba_bluetooth: Convert ACPI driver to a platform one
git bisect good 553b2ac59fbb434330287fde0cabc64bc6f11ceb
# good: [3a96c7915d93231e128df74901fe8fcb960b0ecb] platform/x86: toshiba_haps: Convert ACPI driver to a platform one
git bisect good 3a96c7915d93231e128df74901fe8fcb960b0ecb
# first 'bad' commit: [378500dc1313e2c06a2f675bb00ab5d7880433ba] platform/x86: asus-laptop: Register ACPI notify handler directly

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1143721#15

Regards,
Jun MO

#1146124#10
Date:
2026-08-30 08:42:08 UTC
From:
To:
Hi

In Debian, in https://bugs.debian.org/1146124, Jun Mo, reported the
following, with a bisection result:

#regzbot introduced: 378500dc1313e2c06a2f675bb00ab5d7880433ba
#regzbot link: https://bugs.debian.org/1146124

Does this rings a bell?

Regards,
Salvatore

#1146124#21
Date:
2026-08-30 11:58:48 UTC
From:
To:
Am 30.08.26 um 10:42 schrieb Salvatore Bonaccorso:

I think i found the culprit, could you please test the attached patch?

Thanks,
Armin Wolf

#1146124#26
Date:
2026-08-30 13:26:00 UTC
From:
To:
Hi Armin Wolf,

Build the module with the patch(only "make -C .
M=drivers/platform/x86") and load the built
drivers/platform/x86/asus-laptop.ko, now the Fn hotkeys works again.

Thanks!

Regards,
Jun MO

#1146124#31
Date:
2026-08-30 14:41:46 UTC
From:
To:
Hi Armin Wolf,

I found that after rmmod the built module, it can not be insmod again.
Also the system experienced NULL pointer dereferences in
acpi_bus_generate_netlink_event() which may related to the built
module.

I guess these was caused that the patch only change calling to
acpi_dev_install_notify_handler(), not
acpi_dev_remove_notify_handler().
After change ACPI_DEVICE_NOTIFY to ACPI_ALL_NOTIFY in calling to
acpi_dev_remove_notify_handler()(see attached patch), now the module
can be insmod again after once rmmod.

Regards,
Jun MO