linux/drivers/platform
Anton Khirnov 5c51a11c1a platform/x86: asus-wmi: use brightness_set_blocking() for kbd led
[ Upstream commit ccb61a3283 ]

kbd_led_set() can sleep, and so may not be used as the brightness_set()
callback.

Otherwise using this led with a trigger leads to system hangs
accompanied by:
BUG: scheduling while atomic: acpi_fakekeyd/2588/0x00000003
CPU: 4 UID: 0 PID: 2588 Comm: acpi_fakekeyd Not tainted 6.17.9+deb14-amd64 #1 PREEMPT(lazy)  Debian 6.17.9-1
Hardware name: ASUSTeK COMPUTER INC. ASUS EXPERTBOOK B9403CVAR/B9403CVAR, BIOS B9403CVAR.311 12/24/2024
Call Trace:
 <TASK>
 [...]
 schedule_timeout+0xbd/0x100
 __down_common+0x175/0x290
 down_timeout+0x67/0x70
 acpi_os_wait_semaphore+0x57/0x90
 [...]
 asus_wmi_evaluate_method3+0x87/0x190 [asus_wmi]
 led_trigger_event+0x3f/0x60
 [...]

Fixes: 9fe44fc98c ("platform/x86: asus-wmi: Simplify the keyboard brightness updating process")
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Denis Benato <benato.denis96@gmail.com>
Link: https://patch.msgid.link/20251129101307.18085-3-anton@khirnov.net
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2025-12-18 13:55:18 +01:00
..
arm64 move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
chrome platform/chrome: cros_ec: Unregister notifier in cros_ec_unregister() 2025-08-28 16:30:53 +02:00
cznic platform: cznic: CZNIC_PLATFORMS should depend on ARCH_MVEBU 2025-02-27 04:30:20 -08:00
goldfish platform/goldfish: goldfish_pipe: add missing MODULE_DESCRIPTION() macro 2024-07-03 16:40:46 +02:00
loongarch platform/loongarch: laptop: Add backlight power control support 2025-06-27 11:11:37 +01:00
mellanox platform/mellanox: mlxbf-pmc: Use kstrtobool() to check 0/1 input 2025-08-01 09:48:40 +01:00
mips platform: mips: cpu_hwmon: Disable driver on unsupported hardware 2024-06-21 10:22:10 +02:00
olpc platform-drivers-x86 for v6.12-1 2024-09-19 09:16:04 +02:00
surface move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
x86 platform/x86: asus-wmi: use brightness_set_blocking() for kbd led 2025-12-18 13:55:18 +01:00
Kconfig platform: cznic: Add preliminary support for Turris Omnia MCU 2024-07-01 15:46:36 +02:00
Makefile platform-drivers-x86 for v6.11-1 2024-07-17 17:05:21 -07:00