summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/thermal.c
diff options
context:
space:
mode:
authorDave Jones <davej@redhat.com>2006-03-09 04:12:00 +0100
committerLen Brown <len.brown@intel.com>2006-03-31 08:02:39 +0200
commitfdc136ccd3332938e989439c025c363f8479f3e6 (patch)
tree6e71b49f8b1ed92fe0c51984e27379acdf2991c3 /drivers/acpi/thermal.c
parent[ACPI] document cmdline acpi_os_name= (diff)
downloadlinux-fdc136ccd3332938e989439c025c363f8479f3e6.tar.xz
linux-fdc136ccd3332938e989439c025c363f8479f3e6.zip
[ACPI] fix possible acpi thermal leak in failure path
Coverity: #601 Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/thermal.c')
-rw-r--r--drivers/acpi/thermal.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c
index 19f3ea48475e..d0b44ce2ec5a 100644
--- a/drivers/acpi/thermal.c
+++ b/drivers/acpi/thermal.c
@@ -942,8 +942,10 @@ acpi_thermal_write_trip_points(struct file *file,
memset(limit_string, 0, ACPI_THERMAL_MAX_LIMIT_STR_LEN);
active = kmalloc(ACPI_THERMAL_MAX_ACTIVE * sizeof(int), GFP_KERNEL);
- if (!active)
+ if (!active) {
+ kfree(limit_string);
return_VALUE(-ENOMEM);
+ }
if (!tz || (count > ACPI_THERMAL_MAX_LIMIT_STR_LEN - 1)) {
ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Invalid argument\n"));