[PATCH 0/4] platform/x86: wmi: Event handling fixes

From: Armin Wolf
Date: Wed Jan 03 2024 - 14:28:03 EST


This patch series contains various fixes for the handling of
WMI events. The first patch fixes an issue where the WMI core
would return an error even when a legacy WMI notify handler
was installed successfully.

The second patch cleans up the last remains of
commit 58f6425eb92f ("WMI: Cater for multiple events with same GUID"),
which is useless now that legacy WMI handlers cannot see duplicated
GUIDS. This however might highlight a potential problem:

In the email thread concerning aforementioned commit, a (now legacy)
WMI driver was mentioned which depended on this functionality.
I believe this driver is the dell-wmi-aio driver, so this driver is
likely already broken for some time and should be converted to the
new bus-based interface.

The next patch decouples the legacy WMI notify handlers from the
wmi_block_list, while the last patch fixes a race condition when a
notify callback is called by the WMI core.

All patches have been tested on a Dell Inspiron 3505 and a
Acer Aspire E1-731.

Armin Wolf (4):
platform/x86: wmi: Fix error handling in legacy WMI notify handler
functions
platform/x86: wmi: Return immediately if an suitable WMI event is
found
platform/x86: wmi: Decouple legacy WMI notify handlers from
wmi_block_list
platform/x86: wmi: Fix notify callback locking

drivers/platform/x86/wmi.c | 179 +++++++++++++++++++++++--------------
1 file changed, 111 insertions(+), 68 deletions(-)

--
2.39.2