wmi: Free the allocated acpi objects through wmi_get_event_data

These function allocate an acpi object by calling wmi_get_event_data, which
then calls acpi_evaluate_object, and it is not freed afterwards.

And kernel doc is fixed for parameters of wmi_get_event_data.

Signed-off-by: Anisse Astier <anisse@astier.eu>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Acked-by: Carlos Corbacho <carlos@strangeworlds.co.uk>
Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Anisse Astier 2009-12-04 10:10:09 +01:00 committed by Len Brown
parent dcbfb8156a
commit 3e9b988e4e
3 changed files with 5 additions and 2 deletions

View file

@ -238,6 +238,7 @@ static void dell_wmi_notify(u32 value, void *context)
input_sync(dell_wmi_input_dev); input_sync(dell_wmi_input_dev);
} }
} }
kfree(obj);
} }

View file

@ -381,6 +381,8 @@ static void hp_wmi_notify(u32 value, void *context)
} else } else
printk(KERN_INFO "HP WMI: Unknown key pressed - %x\n", printk(KERN_INFO "HP WMI: Unknown key pressed - %x\n",
eventcode); eventcode);
kfree(obj);
} }
static int __init hp_wmi_input_setup(void) static int __init hp_wmi_input_setup(void)

View file

@ -540,8 +540,8 @@ EXPORT_SYMBOL_GPL(wmi_remove_notify_handler);
/** /**
* wmi_get_event_data - Get WMI data associated with an event * wmi_get_event_data - Get WMI data associated with an event
* *
* @event - Event to find * @event: Event to find
* &out - Buffer to hold event data * @out: Buffer to hold event data. out->pointer should be freed with kfree()
* *
* Returns extra data associated with an event in WMI. * Returns extra data associated with an event in WMI.
*/ */