linux-stable/arch/x86/platform/efi
Ard Biesheuvel 44511fb9e5 efi: Use correct type for struct efi_memory_map::phys_map
We have been getting away with using a void* for the physical
address of the UEFI memory map, since, even on 32-bit platforms
with 64-bit physical addresses, no truncation takes place if the
memory map has been allocated by the firmware (which only uses
1:1 virtually addressable memory), which is usually the case.

However, commit:

  0f96a99dab ("efi: Add "efi_fake_mem" boot option")

adds code that clones and modifies the UEFI memory map, and the
clone may live above 4 GB on 32-bit platforms.

This means our use of void* for struct efi_memory_map::phys_map has
graduated from 'incorrect but working' to 'incorrect and
broken', and we need to fix it.

So redefine struct efi_memory_map::phys_map as phys_addr_t, and
get rid of a bunch of casts that are now unneeded.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: izumi.taku@jp.fujitsu.com
Cc: kamezawa.hiroyu@jp.fujitsu.com
Cc: linux-efi@vger.kernel.org
Cc: matt.fleming@intel.com
Link: http://lkml.kernel.org/r/1445593697-1342-1-git-send-email-ard.biesheuvel@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2015-10-28 12:28:06 +01:00
..
early_printk.c x86/efi: earlyprintk=efi,keep fix 2014-05-03 06:39:06 +01:00
efi-bgrt.c x86/efi-bgrt: Switch pr_err() to pr_debug() for invalid BGRT 2015-08-08 10:37:39 +02:00
efi.c efi: Use correct type for struct efi_memory_map::phys_map 2015-10-28 12:28:06 +01:00
efi_32.c efi: Clean up the efi_call_phys_[prolog|epilog]() save/restore interaction 2015-04-01 12:46:22 +01:00
efi_64.c efi: Clean up the efi_call_phys_[prolog|epilog]() save/restore interaction 2015-04-01 12:46:22 +01:00
efi_stub_32.S x86/efi: Mark initialization code as such 2014-10-03 18:41:03 +01:00
efi_stub_64.S x86/efi: Avoid triple faults during EFI mixed mode calls 2015-02-13 15:42:56 +00:00
efi_thunk_64.S x86/efi: Avoid triple faults during EFI mixed mode calls 2015-02-13 15:42:56 +00:00
Makefile x86/efi: Move all workarounds to a separate file quirks.c 2014-06-19 11:14:33 +01:00
quirks.c x86/reboot: Add EFI reboot quirk for ACPI Hardware Reduced flag 2014-07-18 21:23:52 +01:00