diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-03-02 14:18:57 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-03-02 14:18:57 +0100 |
commit | be482d624c3112c761d429f314582850b62214b5 (patch) | |
tree | 7f90fd31eee17de9f71b398fa5a073ff401afffd /drivers/firmware/efi | |
parent | a38ecbbd0be025a6ecbbfd22d2575a5b46317117 (diff) | |
parent | 6d9ff473317245e3e5cd9922b4520411c2296388 (diff) | |
download | linux-stable-be482d624c3112c761d429f314582850b62214b5.tar.gz linux-stable-be482d624c3112c761d429f314582850b62214b5.tar.bz2 linux-stable-be482d624c3112c761d429f314582850b62214b5.zip |
Merge tag 'efi-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi into x86/urgent
Pull EFI fixes from Matt Fleming:
" - Fix regression in DMI sysfs code for handling "End of Table" entry
and a type bug that could lead to integer overflow. (Ivan Khoronzhuk)
- Fix boundary checking in efi_high_alloc() which can lead to memory
corruption in the EFI boot stubs. (Yinghai Lu)"
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/firmware/efi')
-rw-r--r-- | drivers/firmware/efi/libstub/efi-stub-helper.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/firmware/efi/libstub/efi-stub-helper.c b/drivers/firmware/efi/libstub/efi-stub-helper.c index 2fe195002021..f07d4a67fa76 100644 --- a/drivers/firmware/efi/libstub/efi-stub-helper.c +++ b/drivers/firmware/efi/libstub/efi-stub-helper.c @@ -179,12 +179,12 @@ again: start = desc->phys_addr; end = start + desc->num_pages * (1UL << EFI_PAGE_SHIFT); - if ((start + size) > end || (start + size) > max) - continue; - - if (end - size > max) + if (end > max) end = max; + if ((start + size) > end) + continue; + if (round_down(end - size, align) < start) continue; |