From: Ard Biesheuvel <ardb@kernel.org>
To: linux-efi@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
Thomas Gleixner <tglx@linutronix.de>
Cc: Ard Biesheuvel <ardb@kernel.org>,
linux-kernel@vger.kernel.org,
Arvind Sankar <nivedita@alum.mit.edu>
Subject: [GIT PULL 00/25] EFI updates for v5.6
Date: Tue, 24 Dec 2019 16:10:00 +0100 [thread overview]
Message-ID: <20191224151025.32482-1-ardb@kernel.org> (raw)
Ingo, Thomas,
Please consider the pull request below. I am anticipating some more
changes for this cycle, but it would be good to get these queued up and
into -next sooner rather than later, since there is some risk of
breakage even though the changes have been tested on a variety of
hardware.
If you have the stomach to go over them in detail: please take into
account that these patches modify the same efi_call_xxx() macro
definitions multiple times, in order to be bisectable, so please
consider the end result first before commenting on coding style of the
intermediate changes.
NOTE: this series depends on the efi-urgent PR that I just sent out, so
please merge tip/efi/urgent into tip/efi/core before applying the
changes below.
Thanks and happy Christmas,
Ard.
The following changes since commit 77217fcc8e04f27127b32825376ed508705fd946:
x86/efistub: disable paging at mixed mode entry (2019-12-23 16:25:21 +0100)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-next
for you to fetch changes up to c51a0735389b92cb0025137af0034773773ad7da:
efi/libstub/x86: avoid globals to store context during mixed mode calls (2019-12-24 15:32:22 +0100)
----------------------------------------------------------------
EFI changes for v5.6:
- Cleanup of the GOP [graphics output] handling code in the EFI stub (Arvind)
- Inspired by the above, and with a little bit of Arvind's help, a complete
refactor of the mixed mode handling in the x86 EFI stub, getting rid of a
lot of ugly and unnecessary wrapping and typecasting. This is a worthwhile
cleanup by itself, but it also addresses a recurring issue where stub code
often fails to compile on non-x86 because all the casting and thunking via
variadic wrapper routines is masking problems in the code.
----------------------------------------------------------------
Ard Biesheuvel (21):
efi/libstub: remove unused __efi_call_early() macro
efi/x86: rename efi_is_native() to efi_is_mixed()
efi/libstub: use a helper to iterate over a EFI handle array
efi/libstub: extend native protocol definitions with mixed_mode aliases
efi/libstub: distinguish between native/mixed not 32/64 bit
efi/libstub: drop explicit 32/64-bit protocol definitions
efi/libstub: use stricter typing for firmware function pointers
efi/libstub: annotate firmware routines as __efiapi
efi/libstub/x86: avoid thunking for native firmware calls
efi/libstub: avoid protocol wrapper for file I/O routines
efi/libstub: get rid of 'sys_table_arg' macro parameter
efi/libstub: unify the efi_char16_printk implementations
efi/libstub/x86: drop __efi_early() export and efi_config struct
efi/libstub: drop sys_table_arg from printk routines
efi/libstub: remove 'sys_table_arg' from all function prototypes
efi/libstub/x86: work around page freeing issue in mixed mode
efi/libstub: drop protocol argument from efi_call_proto() macro
efi/libstub: drop 'table' argument from efi_table_attr() macro
efi/libstub: rename efi_call_early/_runtime macros to be more intuitive
efi/libstub: tidy up types and names of global cmdline variables
efi/libstub/x86: avoid globals to store context during mixed mode calls
Arvind Sankar (4):
efi/gop: Remove bogus packed attribute from GOP structures
efi/gop: Remove unused typedef
efi/gop: Convert GOP structures to typedef and cleanup some types
efi/gop: Unify 32/64-bit functions
arch/arm/include/asm/efi.h | 17 +-
arch/arm64/include/asm/efi.h | 16 +-
arch/x86/Kconfig | 11 +-
arch/x86/boot/compressed/Makefile | 2 +-
arch/x86/boot/compressed/eboot.c | 290 +++++-----
arch/x86/boot/compressed/eboot.h | 30 +-
arch/x86/boot/compressed/efi_stub_32.S | 87 ---
arch/x86/boot/compressed/efi_stub_64.S | 5 -
arch/x86/boot/compressed/efi_thunk_64.S | 17 +-
arch/x86/boot/compressed/head_32.S | 64 +--
arch/x86/boot/compressed/head_64.S | 97 +---
arch/x86/include/asm/efi.h | 77 ++-
arch/x86/platform/efi/efi.c | 12 +-
arch/x86/platform/efi/efi_64.c | 6 +-
arch/x86/platform/efi/quirks.c | 2 +-
arch/x86/xen/efi.c | 2 +-
drivers/firmware/efi/libstub/arm-stub.c | 110 ++--
drivers/firmware/efi/libstub/arm32-stub.c | 70 ++-
drivers/firmware/efi/libstub/arm64-stub.c | 32 +-
drivers/firmware/efi/libstub/efi-stub-helper.c | 278 +++++-----
drivers/firmware/efi/libstub/efistub.h | 48 +-
drivers/firmware/efi/libstub/fdt.c | 53 +-
drivers/firmware/efi/libstub/gop.c | 163 +-----
drivers/firmware/efi/libstub/random.c | 77 ++-
drivers/firmware/efi/libstub/secureboot.c | 11 +-
drivers/firmware/efi/libstub/tpm.c | 48 +-
include/linux/efi.h | 730 +++++++++++--------------
27 files changed, 914 insertions(+), 1441 deletions(-)
delete mode 100644 arch/x86/boot/compressed/efi_stub_32.S
delete mode 100644 arch/x86/boot/compressed/efi_stub_64.S
next reply other threads:[~2019-12-24 15:10 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-24 15:10 Ard Biesheuvel [this message]
2019-12-24 15:10 ` [PATCH 01/25] efi/gop: Remove bogus packed attribute from GOP structures Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 02/25] efi/gop: Remove unused typedef Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 03/25] efi/gop: Convert GOP structures to typedef and cleanup some types Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 04/25] efi/gop: Unify 32/64-bit functions Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 05/25] efi/libstub: remove unused __efi_call_early() macro Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 06/25] efi/x86: rename efi_is_native() to efi_is_mixed() Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 07/25] efi/libstub: use a helper to iterate over a EFI handle array Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 08/25] efi/libstub: extend native protocol definitions with mixed_mode aliases Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 09/25] efi/libstub: distinguish between native/mixed not 32/64 bit Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 10/25] efi/libstub: drop explicit 32/64-bit protocol definitions Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 11/25] efi/libstub: use stricter typing for firmware function pointers Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 12/25] efi/libstub: annotate firmware routines as __efiapi Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 13/25] efi/libstub/x86: avoid thunking for native firmware calls Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 14/25] efi/libstub: avoid protocol wrapper for file I/O routines Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 15/25] efi/libstub: get rid of 'sys_table_arg' macro parameter Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 16/25] efi/libstub: unify the efi_char16_printk implementations Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 17/25] efi/libstub/x86: drop __efi_early() export and efi_config struct Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 18/25] efi/libstub: drop sys_table_arg from printk routines Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 19/25] efi/libstub: remove 'sys_table_arg' from all function prototypes Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 20/25] efi/libstub/x86: work around page freeing issue in mixed mode Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 21/25] efi/libstub: drop protocol argument from efi_call_proto() macro Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 22/25] efi/libstub: drop 'table' argument from efi_table_attr() macro Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 23/25] efi/libstub: rename efi_call_early/_runtime macros to be more intuitive Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 24/25] efi/libstub: tidy up types and names of global cmdline variables Ard Biesheuvel
2019-12-24 15:10 ` [PATCH 25/25] efi/libstub/x86: avoid globals to store context during mixed mode calls Ard Biesheuvel
2019-12-25 9:50 ` [GIT PULL 00/25] EFI updates for v5.6 Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191224151025.32482-1-ardb@kernel.org \
--to=ardb@kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=nivedita@alum.mit.edu \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox