platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]()
[ Upstream commit 727cc0147f5066e359aca65cc6cc5e6d64cc15d8 ] The ACPI buffer memory (out.pointer) returned by wmi_evaluate_method() is not freed after the call, so it leads to memory leak. The method results in ACPI buffer is not used, so just pass NULL to wmi_evaluate_method() which fixes the memory leak. Fixes: 99b38b4acc0d ("platform/x86: add MXM WMI driver.") Signed-off-by: Yu Liao <liaoyu15@huawei.com> Link: https://lore.kernel.org/r/20221129011101.2042315-1-liaoyu15@huawei.com Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f983afc432
commit
17cd8c46cb
@ -35,13 +35,11 @@ int mxm_wmi_call_mxds(int adapter)
|
||||
.xarg = 1,
|
||||
};
|
||||
struct acpi_buffer input = { (acpi_size)sizeof(args), &args };
|
||||
struct acpi_buffer output = { ACPI_ALLOCATE_BUFFER, NULL };
|
||||
acpi_status status;
|
||||
|
||||
printk("calling mux switch %d\n", adapter);
|
||||
|
||||
status = wmi_evaluate_method(MXM_WMMX_GUID, 0x0, adapter, &input,
|
||||
&output);
|
||||
status = wmi_evaluate_method(MXM_WMMX_GUID, 0x0, adapter, &input, NULL);
|
||||
|
||||
if (ACPI_FAILURE(status))
|
||||
return status;
|
||||
@ -60,13 +58,11 @@ int mxm_wmi_call_mxmx(int adapter)
|
||||
.xarg = 1,
|
||||
};
|
||||
struct acpi_buffer input = { (acpi_size)sizeof(args), &args };
|
||||
struct acpi_buffer output = { ACPI_ALLOCATE_BUFFER, NULL };
|
||||
acpi_status status;
|
||||
|
||||
printk("calling mux switch %d\n", adapter);
|
||||
|
||||
status = wmi_evaluate_method(MXM_WMMX_GUID, 0x0, adapter, &input,
|
||||
&output);
|
||||
status = wmi_evaluate_method(MXM_WMMX_GUID, 0x0, adapter, &input, NULL);
|
||||
|
||||
if (ACPI_FAILURE(status))
|
||||
return status;
|
||||
|
Loading…
x
Reference in New Issue
Block a user