From: Armin Wolf Date: Wed, 29 Nov 2023 18:16:54 +0000 (+0100) Subject: platform/x86: wmi: Skip blocks with zero instances X-Git-Tag: v5.15.143~124 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9008af83efa3a745d579b53462e5a3356cb2d9a0;p=thirdparty%2Fkernel%2Fstable.git platform/x86: wmi: Skip blocks with zero instances [ Upstream commit cbf54f37600e874d82886aa3b2f471778cae01ce ] Some machines like the HP Omen 17 ck2000nf contain WMI blocks with zero instances, so any WMI driver which tries to handle the associated WMI device will fail. Skip such WMI blocks to avoid confusing any WMI drivers. Reported-by: Alexis Belmonte Closes: https://bugzilla.kernel.org/show_bug.cgi?id=218188 Fixes: bff431e49ff5 ("ACPI: WMI: Add ACPI-WMI mapping driver") Tested-by: Alexis Belmonte Signed-off-by: Armin Wolf Link: https://lore.kernel.org/r/20231129181654.5800-1-W_Armin@gmx.de Reviewed-by: Ilpo Järvinen Signed-off-by: Ilpo Järvinen Signed-off-by: Sasha Levin --- diff --git a/drivers/platform/x86/wmi.c b/drivers/platform/x86/wmi.c index d064d8fb0a9a9..b1cbe280d2a6a 100644 --- a/drivers/platform/x86/wmi.c +++ b/drivers/platform/x86/wmi.c @@ -1215,6 +1215,11 @@ static int parse_wdg(struct device *wmi_bus_dev, struct acpi_device *device) if (debug_dump_wdg) wmi_dump_wdg(&gblock[i]); + if (!gblock[i].instance_count) { + dev_info(wmi_bus_dev, FW_INFO "%pUL has zero instances\n", &gblock[i].guid); + continue; + } + if (guid_already_parsed_for_legacy(device, &gblock[i].guid)) continue;