linux-efi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/14] efi: more fixes and general cleanups for v5.6
@ 2019-12-30 18:08 Ard Biesheuvel
  2019-12-30 18:08 ` [PATCH v2 01/14] efi/libstub: fix boot argument handling in mixed mode entry code Ard Biesheuvel
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: Ard Biesheuvel @ 2019-12-30 18:08 UTC (permalink / raw)
  To: linux-efi
  Cc: Ard Biesheuvel, Ingo Molnar, Arvind Sankar, Hans de Goede,
	Andy Lutomirski

This is a combined v2 followup to the v1s of

efi: more fixes and general cleanups for v5.6 [0]
efi/x86: clean up and simplify runtime call wrappers [1]

sent out last week. I have some other changes pending regarding the
mapping of EFI runtime memory with restricted permissions [2], but
I will get back to those after finishing up with the changes below.

Changes since v1:
- Fix logic in #3 for running 64-bit kernels on 32-bit firmware when mixed
  mode support is not compiled in. In this case, we can still boot but we
  will not have access to runtime services.
- Refactor the C wrappers involved in calling SetVirtualAddressMap, which
  were kludgy and hard to follow (#6, #7)
- Incorporate review feedback from Arvind and Andy regarding the asm
  wrappers (#8, #9, #10), and simplify them a bit further,
- Drop efi_runtime_init32/64 entirely since they turned out to be
  unnecessary. (#11)
- Add another pair of cleanup patches for the runtime services code (#13, #14)

Branch can be found here:
https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/log/?h=efi-more-cleanup-for-v5.6-v2

[0] https://lore.kernel.org/linux-efi/20191228152109.6301-1-ardb@kernel.org/
[1] https://lore.kernel.org/linux-efi/20191226151407.29716-1-ardb@kernel.org/
[2] https://lore.kernel.org/linux-efi/20191227163418.16139-1-ardb@kernel.org/

Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arvind Sankar <nivedita@alum.mit.edu>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Andy Lutomirski <luto@kernel.org>

Ard Biesheuvel (14):
  efi/libstub: fix boot argument handling in mixed mode entry code
  efi/libstub: use correct system table pointer in mixed mode efi_free()
  efi/x86: re-disable RT services for 32-bit kernels running on 64-bit
    EFI
  efi/x86: map the entire EFI vendor string before copying it
  efi/x86: avoid redundant cast of EFI firmware service pointer
  efi/x86: split off some old memmap handling into separate routines
  efi/x86: split SetVirtualAddresMap() wrappers into 32 and 64 bit
    versions
  efi/x86: simplify i386 efi_call_phys() firmware call wrapper
  efi/x86: simplify 64-bit EFI firmware call wrapper
  efi/x86: simplify mixed mode call wrapper
  efi/x86: drop two near identical versions of efi_runtime_init()
  efi/x86: clean up efi_systab_init() routine for legibility
  efi/x86: don't panic or BUG() on non-critical error conditions
  efi/x86: remove unreachable code in kexec_enter_virtual_mode()

 arch/x86/boot/compressed/eboot.c     |   3 +-
 arch/x86/boot/compressed/head_64.S   |  17 +-
 arch/x86/include/asm/efi.h           |  43 +--
 arch/x86/platform/efi/Makefile       |   1 -
 arch/x86/platform/efi/efi.c          | 354 +++++++-------------
 arch/x86/platform/efi/efi_32.c       |  22 +-
 arch/x86/platform/efi/efi_64.c       | 129 ++++---
 arch/x86/platform/efi/efi_stub_32.S  | 109 +-----
 arch/x86/platform/efi/efi_stub_64.S  |  39 +--
 arch/x86/platform/efi/efi_thunk_64.S | 121 ++-----
 arch/x86/platform/uv/bios_uv.c       |   7 +-
 include/linux/efi.h                  |  23 +-
 12 files changed, 288 insertions(+), 580 deletions(-)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2019-12-30 18:09 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-12-30 18:08 [PATCH v2 00/14] efi: more fixes and general cleanups for v5.6 Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 01/14] efi/libstub: fix boot argument handling in mixed mode entry code Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 02/14] efi/libstub: use correct system table pointer in mixed mode efi_free() Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 03/14] efi/x86: re-disable RT services for 32-bit kernels running on 64-bit EFI Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 04/14] efi/x86: map the entire EFI vendor string before copying it Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 05/14] efi/x86: avoid redundant cast of EFI firmware service pointer Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 06/14] efi/x86: split off some old memmap handling into separate routines Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 07/14] efi/x86: split SetVirtualAddresMap() wrappers into 32 and 64 bit versions Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 08/14] efi/x86: simplify i386 efi_call_phys() firmware call wrapper Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 09/14] efi/x86: simplify 64-bit EFI " Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 10/14] efi/x86: simplify mixed mode " Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 11/14] efi/x86: drop two near identical versions of efi_runtime_init() Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 12/14] efi/x86: clean up efi_systab_init() routine for legibility Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 13/14] efi/x86: don't panic or BUG() on non-critical error conditions Ard Biesheuvel
2019-12-30 18:08 ` [PATCH v2 14/14] efi/x86: remove unreachable code in kexec_enter_virtual_mode() Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).