]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
platform/x86: alienware-wmi: fix kfree on potentially uninitialized pointer
authorColin Ian King <colin.king@canonical.com>
Sat, 30 Mar 2019 00:17:12 +0000 (00:17 +0000)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 23 Sep 2019 20:11:44 +0000 (21:11 +0100)
commite2af245193d86f0ab74f44e76add875b5f812a14
tree1c49b8aeb4100f9c4ae946e0934dfe3e4afaf257
parente2cb920d34789a825299725a643fe31aebcea359
platform/x86: alienware-wmi: fix kfree on potentially uninitialized pointer

commit 98e2630284ab741804bd0713e932e725466f2f84 upstream.

Currently the kfree of output.pointer can be potentially freeing
an uninitalized pointer in the case where out_data is NULL. Fix this
by reworking the case where out_data is not-null to perform the
ACPI status check and also the kfree of outpoint.pointer in one block
and hence ensuring the pointer is only freed when it has been used.

Also replace the if (ptr != NULL) idiom with just if (ptr).

Fixes: ff0e9f26288d ("platform/x86: alienware-wmi: Correct a memory leak")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
[bwh: Backported to 3.16: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/platform/x86/alienware-wmi.c