C: Carlos Corbacho <carlos@xxxxxxxxxxxxxxxxxxx> CC: Matthew Garrett <mjg59@xxxxxxxxxxxxx> CC: linux-acpi@xxxxxxxxxxxxxxx CC: Len Brown <lenb@xxxxxxxxxx> CC: Linux-acpi@xxxxxxxxxxxxxxx Signed-off-by: Thomas Renninger <trenn@xxxxxxx> --- drivers/platform/x86/hp-wmi.c | 10 +++++++++- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/drivers/platform/x86/hp-wmi.c b/drivers/platform/x86/hp-wmi.c index c284217..8cea7ff 100644 --- a/drivers/platform/x86/hp-wmi.c +++ b/drivers/platform/x86/hp-wmi.c @@ -128,10 +128,15 @@ static int hp_wmi_perform_query(int query, int write, int value) obj = output.pointer; - if (!obj || obj->type != ACPI_TYPE_BUFFER) + if (!obj) return -EINVAL; + else if (obj->type != ACPI_TYPE_BUFFER) { + kfree(output.pointer); + return -EINVAL; + } bios_return = *((struct bios_return *)obj->buffer.pointer); + kfree(output.pointer); if (bios_return.return_code > 0) return bios_return.return_code * -1; else @@ -377,6 +382,9 @@ static void hp_wmi_notify(u32 value, void *context) eventcode); } else printk(KERN_INFO "HP WMI: Unknown response received\n"); + + if(obj) + kfree(obj.pointer); } static int __init hp_wmi_input_setup(void) -- 1.6.3 -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html