| From: Hans de Goede <hdegoede@redhat.com> |
| Date: Tue, 17 Dec 2019 20:06:04 +0100 |
| Subject: platform/x86: hp-wmi: Make buffer for HPWMI_FEATURE2_QUERY 128 bytes |
| |
| commit 133b2acee3871ae6bf123b8fe34be14464aa3d2c upstream. |
| |
| At least on the HP Envy x360 15-cp0xxx model the WMI interface |
| for HPWMI_FEATURE2_QUERY requires an outsize of at least 128 bytes, |
| otherwise it fails with an error code 5 (HPWMI_RET_INVALID_PARAMETERS): |
| |
| Dec 06 00:59:38 kernel: hp_wmi: query 0xd returned error 0x5 |
| |
| We do not care about the contents of the buffer, we just want to know |
| if the HPWMI_FEATURE2_QUERY command is supported. |
| |
| This commits bumps the buffer size, fixing the error. |
| |
| Fixes: 8a1513b4932 ("hp-wmi: limit hotkey enable") |
| BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1520703 |
| Signed-off-by: Hans de Goede <hdegoede@redhat.com> |
| Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
| [bwh: Backported to 3.16: adjust context] |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/platform/x86/hp-wmi.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/platform/x86/hp-wmi.c |
| +++ b/drivers/platform/x86/hp-wmi.c |
| @@ -309,7 +309,7 @@ static int __init hp_wmi_bios_2008_later |
| |
| static int __init hp_wmi_bios_2009_later(void) |
| { |
| - int state = 0; |
| + u8 state[128]; |
| int ret = hp_wmi_perform_query(HPWMI_FEATURE2_QUERY, 0, &state, |
| sizeof(state), sizeof(state)); |
| if (!ret) |