瀏覽代碼

msi-wmi: Fix memory leak

Fix memory leak - don't forget to kfree ACPI object when returning from
msi_wmi_notify() after suppressing key event.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
Acked-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Lee, Chun-Yi <jlee@suse.com>
Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Maxim Mikityanskiy 12 年之前
父節點
當前提交
51c94491c8
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      drivers/platform/x86/msi-wmi.c

+ 3 - 1
drivers/platform/x86/msi-wmi.c

@@ -176,7 +176,7 @@ static void msi_wmi_notify(u32 value, void *context)
 				pr_debug("Suppressed key event 0x%X - "
 				pr_debug("Suppressed key event 0x%X - "
 					 "Last press was %lld us ago\n",
 					 "Last press was %lld us ago\n",
 					 key->code, ktime_to_us(diff));
 					 key->code, ktime_to_us(diff));
-				return;
+				goto msi_wmi_notify_exit;
 			}
 			}
 			last_pressed[key->code - SCANCODE_BASE] = cur;
 			last_pressed[key->code - SCANCODE_BASE] = cur;
 
 
@@ -195,6 +195,8 @@ static void msi_wmi_notify(u32 value, void *context)
 			pr_info("Unknown key pressed - %x\n", eventcode);
 			pr_info("Unknown key pressed - %x\n", eventcode);
 	} else
 	} else
 		pr_info("Unknown event received\n");
 		pr_info("Unknown event received\n");
+
+msi_wmi_notify_exit:
 	kfree(response.pointer);
 	kfree(response.pointer);
 }
 }