[x86] efi: Fix dummy variable buffer allocation
svn path=/dists/sid/linux/; revision=20284
This commit is contained in:
parent
46013cc609
commit
01086c8f36
|
@ -22,6 +22,7 @@ linux (3.9.7-1) UNRELEASED; urgency=low
|
|||
[ Ben Hutchings ]
|
||||
* yama: Disable ptrace restrictions by default, and change boot message
|
||||
to indicate this (Closes: #712740)
|
||||
* [x86] efi: Fix dummy variable buffer allocation
|
||||
|
||||
-- Ben Hutchings <ben@decadent.org.uk> Wed, 19 Jun 2013 04:30:59 +0100
|
||||
|
||||
|
|
43
debian/patches/bugfix/x86/x86-efi-Fix-dummy-variable-buffer-allocation.patch
vendored
Normal file
43
debian/patches/bugfix/x86/x86-efi-Fix-dummy-variable-buffer-allocation.patch
vendored
Normal file
|
@ -0,0 +1,43 @@
|
|||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Sun, 16 Jun 2013 21:27:12 +0100
|
||||
Subject: x86/efi: Fix dummy variable buffer allocation
|
||||
|
||||
commit b8cb62f82103083a6e8fa5470bfe634a2c06514d upstream.
|
||||
|
||||
1. Check for allocation failure
|
||||
2. Clear the buffer contents, as they may actually be written to flash
|
||||
3. Don't leak the buffer
|
||||
|
||||
Compile-tested only.
|
||||
|
||||
[ Tested successfully on my buggy ASUS machine - Matt ]
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
|
||||
---
|
||||
arch/x86/platform/efi/efi.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/arch/x86/platform/efi/efi.c
|
||||
+++ b/arch/x86/platform/efi/efi.c
|
||||
@@ -1074,7 +1074,10 @@ efi_status_t efi_query_variable_store(u3
|
||||
* that by attempting to use more space than is available.
|
||||
*/
|
||||
unsigned long dummy_size = remaining_size + 1024;
|
||||
- void *dummy = kmalloc(dummy_size, GFP_ATOMIC);
|
||||
+ void *dummy = kzalloc(dummy_size, GFP_ATOMIC);
|
||||
+
|
||||
+ if (!dummy)
|
||||
+ return EFI_OUT_OF_RESOURCES;
|
||||
|
||||
status = efi.set_variable(efi_dummy_name, &EFI_DUMMY_GUID,
|
||||
EFI_VARIABLE_NON_VOLATILE |
|
||||
@@ -1094,6 +1097,8 @@ efi_status_t efi_query_variable_store(u3
|
||||
0, dummy);
|
||||
}
|
||||
|
||||
+ kfree(dummy);
|
||||
+
|
||||
/*
|
||||
* The runtime code may now have triggered a garbage collection
|
||||
* run, so check the variable info again
|
|
@ -107,3 +107,4 @@ features/arm/0001-ARM-mvebu-Add-thermal-support-to-Armada-XP-device-tr.patch
|
|||
bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
|
||||
debian/powerpc-machdep-avoid-abi-change-in-3.9.6.patch
|
||||
debian/yama-disable-by-default.patch
|
||||
bugfix/x86/x86-efi-Fix-dummy-variable-buffer-allocation.patch
|
||||
|
|
Loading…
Reference in New Issue