* [GIT PULL] EFI changes for v5.8
@ 2020-05-25 8:07 Ard Biesheuvel
2020-05-25 13:14 ` Ingo Molnar
0 siblings, 1 reply; 9+ messages in thread
From: Ard Biesheuvel @ 2020-05-25 8:07 UTC (permalink / raw)
To: linux-efi
Cc: linux-kernel, x86, Ingo Molnar, Borislav Petkov, Thomas Gleixner,
Arvind Sankar
Ingo, Thomsd, Boris,
Please pull the changes below. Note that I did not incorporate the GOT
handling changes for the x86 decompressor - Arvind has some changes on
top that might just as well go in at the same time, and they are not
really EFI changes anyway.
The following changes since commit 4da0b2b7e67524cc206067865666899bc02e1cb0:
efi/libstub: Re-enable command line initrd loading for x86 (2020-04-25 12:26:32 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-changes-for-v5.8
for you to fetch changes up to 9241dfe7f2772fc73c82eb950afb1c795d2c012c:
efi/x86: Drop the special GDT for the EFI thunk (2020-05-24 00:25:15 +0200)
Cc: Ingo Molnar <mingo@redhat.com>,
Cc: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Arvind Sankar <nivedita@alum.mit.edu>
----------------------------------------------------------------
More EFI changes for v5.8:
- Rename pr_efi/pr_efi_err to efi_info/efi_err, and use them consistently
- Simplify and unify initrd loading
- Parse the builtin command line on x86 (if provided)
- Implement printk() support, including support for wide character strings
- Some fixes for issues introduced by the first batch of v5.8 changes
- Fix a missing prototypes warning
- Simplify GDT handling in early mixed mode thunking code
- Some other minor fixes and cleanups
----------------------------------------------------------------
Ard Biesheuvel (5):
efi/libstub/x86: Work around LLVM ELF quirk build regression
efi/libstub: Make efi_printk() input argument const char*
efi/libstub: Use pool allocation for the command line
efi/efivars: Add missing kobject_put() in sysfs entry creation error path
efi/libstub: Add missing prototype for PE/COFF entry point
Arvind Sankar (38):
efi/x86: Use correct size for boot_params
efi/libstub: Add a helper function to split 64-bit values
efi/libstub: Move pr_efi/pr_efi_err into efi namespace
efi/x86: Use efi_err for error messages
efi/gop: Use efi_err for error messages
efi/tpm: Use efi_err for error messages
efi/libstub: Upgrade ignored dtb= argument message to error
efi/x86: Move command-line initrd loading to efi_main
efi/libstub: Unify initrd loading across architectures
efi/x86: Support builtin command line
efi/libstub: Check return value of efi_parse_options
efi/libstub: Fix mixed mode boot issue after macro refactor
efi/libstub: Include dependencies of efistub.h
efi/libstub: Rename efi_[char16_]printk to efi_[char16_]puts
efi/libstub: Buffer output of efi_puts
efi/libstub: Add a basic printf implementation
efi/libstub: Optimize for size instead of speed
efi/printf: Drop %n format and L qualifier
efi/printf: Add 64-bit and 8-bit integer support
efi/printf: Factor out flags parsing and handle '%' earlier
efi/printf: Fix minor bug in precision handling
efi/printf: Merge 'p' with the integer formats
efi/printf: Factor out width/precision parsing
efi/printf: Factor out integer argument retrieval
efi/printf: Handle null string input
efi/printf: Refactor code to consolidate padding and output
efi/printf: Abort on invalid format
efi/printf: Turn vsprintf into vsnprintf
efi/libstub: Implement printk-style logging
efi/libstub: Add definitions for console input and events
efi/gop: Add an option to list out the available GOP modes
efi/printf: Add support for wchar_t (UTF-16)
efi/libstub: Add UTF-8 decoding to efi_puts
efi/libstub: Use %ls for filename
efi/libstub: Get the exact UTF-8 length
efi/libstub: Use snprintf with %ls to convert the command line
efi/libstub: Don't parse overlong command lines
efi/x86: Drop the special GDT for the EFI thunk
Joe Perches (1):
efi/libstub: Correct comment typos
Documentation/fb/efifb.rst | 5 +
arch/arm/boot/compressed/efi-header.S | 2 +-
arch/arm64/kernel/efi-entry.S | 2 +-
arch/arm64/kernel/efi-header.S | 2 +-
arch/x86/boot/compressed/efi_thunk_64.S | 19 +-
arch/x86/include/asm/efi.h | 29 +-
arch/x86/xen/efi.c | 2 +-
drivers/firmware/efi/efivars.c | 4 +-
drivers/firmware/efi/libstub/Makefile | 7 +-
drivers/firmware/efi/libstub/arm32-stub.c | 12 +-
drivers/firmware/efi/libstub/arm64-stub.c | 14 +-
drivers/firmware/efi/libstub/efi-stub-helper.c | 346 +++++++++++----
drivers/firmware/efi/libstub/efi-stub.c | 70 +--
drivers/firmware/efi/libstub/efistub.h | 155 +++++--
drivers/firmware/efi/libstub/fdt.c | 16 +-
drivers/firmware/efi/libstub/file.c | 14 +-
drivers/firmware/efi/libstub/gop.c | 113 ++++-
drivers/firmware/efi/libstub/pci.c | 10 +-
drivers/firmware/efi/libstub/relocate.c | 4 +-
drivers/firmware/efi/libstub/secureboot.c | 4 +-
drivers/firmware/efi/libstub/tpm.c | 2 +-
drivers/firmware/efi/libstub/vsprintf.c | 564 +++++++++++++++++++++++++
drivers/firmware/efi/libstub/x86-stub.c | 124 +++---
include/linux/efi.h | 4 +-
24 files changed, 1211 insertions(+), 313 deletions(-)
create mode 100644 drivers/firmware/efi/libstub/vsprintf.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-05-25 8:07 [GIT PULL] EFI changes for v5.8 Ard Biesheuvel
@ 2020-05-25 13:14 ` Ingo Molnar
0 siblings, 0 replies; 9+ messages in thread
From: Ingo Molnar @ 2020-05-25 13:14 UTC (permalink / raw)
To: Ard Biesheuvel
Cc: linux-efi, linux-kernel, x86, Ingo Molnar, Borislav Petkov,
Thomas Gleixner, Arvind Sankar
* Ard Biesheuvel <ardb@kernel.org> wrote:
> Ingo, Thomsd, Boris,
>
> Please pull the changes below. Note that I did not incorporate the GOT
> handling changes for the x86 decompressor - Arvind has some changes on
> top that might just as well go in at the same time, and they are not
> really EFI changes anyway.
>
> The following changes since commit 4da0b2b7e67524cc206067865666899bc02e1cb0:
>
> efi/libstub: Re-enable command line initrd loading for x86 (2020-04-25 12:26:32 +0200)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git tags/efi-changes-for-v5.8
>
> for you to fetch changes up to 9241dfe7f2772fc73c82eb950afb1c795d2c012c:
>
> efi/x86: Drop the special GDT for the EFI thunk (2020-05-24 00:25:15 +0200)
>
> Cc: Ingo Molnar <mingo@redhat.com>,
> Cc: Borislav Petkov <bp@alien8.de>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Arvind Sankar <nivedita@alum.mit.edu>
>
> ----------------------------------------------------------------
> More EFI changes for v5.8:
> - Rename pr_efi/pr_efi_err to efi_info/efi_err, and use them consistently
> - Simplify and unify initrd loading
> - Parse the builtin command line on x86 (if provided)
> - Implement printk() support, including support for wide character strings
> - Some fixes for issues introduced by the first batch of v5.8 changes
> - Fix a missing prototypes warning
> - Simplify GDT handling in early mixed mode thunking code
> - Some other minor fixes and cleanups
> 24 files changed, 1211 insertions(+), 313 deletions(-)
Pulled, thanks a lot Ard! Will push it out after a bit of testing.
There was one conflict, in drivers/firmware/efi/libstub/efistub.h,
with a straightforward resolution.
Ingo
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 23:02 ` Linus Torvalds
@ 2020-06-02 6:34 ` Ard Biesheuvel
0 siblings, 0 replies; 9+ messages in thread
From: Ard Biesheuvel @ 2020-06-02 6:34 UTC (permalink / raw)
To: Linus Torvalds
Cc: Ingo Molnar, Linux Kernel Mailing List, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
On Tue, 2 Jun 2020 at 01:02, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
>
> On Mon, Jun 1, 2020 at 1:38 PM Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
> >
> > Ok, I'll try to remember, but I probably won't. So it would be lovely
> > to be reminded when I get the arm pull.
>
> Well, the arm pull already came in, and mentioned it, and it all
> looked entirely local and simple, so it's all good.
>
> Or rather, it's all _potentially_ good, but completely untested by yours truly.
>
> rmk said he'd take a look, but maybe Ard might want to peek at it too.
>
Builds and boots fine via EFI on ARM32, thanks.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 20:38 ` Linus Torvalds
@ 2020-06-01 23:02 ` Linus Torvalds
2020-06-02 6:34 ` Ard Biesheuvel
0 siblings, 1 reply; 9+ messages in thread
From: Linus Torvalds @ 2020-06-01 23:02 UTC (permalink / raw)
To: Ard Biesheuvel
Cc: Ingo Molnar, Linux Kernel Mailing List, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
On Mon, Jun 1, 2020 at 1:38 PM Linus Torvalds
<torvalds@linux-foundation.org> wrote:
>
> Ok, I'll try to remember, but I probably won't. So it would be lovely
> to be reminded when I get the arm pull.
Well, the arm pull already came in, and mentioned it, and it all
looked entirely local and simple, so it's all good.
Or rather, it's all _potentially_ good, but completely untested by yours truly.
rmk said he'd take a look, but maybe Ard might want to peek at it too.
Linus
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 13:24 Ingo Molnar
2020-06-01 14:42 ` Ard Biesheuvel
@ 2020-06-01 21:55 ` pr-tracker-bot
1 sibling, 0 replies; 9+ messages in thread
From: pr-tracker-bot @ 2020-06-01 21:55 UTC (permalink / raw)
To: Ingo Molnar
Cc: Linus Torvalds, linux-kernel, Ard Biesheuvel, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
The pull request you sent on Mon, 1 Jun 2020 15:24:43 +0200:
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git efi-core-2020-06-01
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/58ff3b7604a461a766a84348e620834dce9834a9
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 14:42 ` Ard Biesheuvel
2020-06-01 15:57 ` Ingo Molnar
@ 2020-06-01 20:38 ` Linus Torvalds
2020-06-01 23:02 ` Linus Torvalds
1 sibling, 1 reply; 9+ messages in thread
From: Linus Torvalds @ 2020-06-01 20:38 UTC (permalink / raw)
To: Ard Biesheuvel
Cc: Ingo Molnar, Linux Kernel Mailing List, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
On Mon, Jun 1, 2020 at 7:42 AM Ard Biesheuvel <ardb@kernel.org> wrote:
>
> Please note that Stephen reported a conflict with the ARM32 tree, due
> to the replacement of all instances of pr_efi_err() with efi_err(),
> including a couple in some ARM code that is being modified.
Ok, I'll try to remember, but I probably won't. So it would be lovely
to be reminded when I get the arm pull.
That said, if it's just outright conflicts, that's not a big deal and
the resolution looks trivial. But if there are actual semantic
conflicts that don't show up during the merge like Ingo implies, I
would indeed not notice due to me not doing any cross-builds.
Linus
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 14:42 ` Ard Biesheuvel
@ 2020-06-01 15:57 ` Ingo Molnar
2020-06-01 20:38 ` Linus Torvalds
1 sibling, 0 replies; 9+ messages in thread
From: Ingo Molnar @ 2020-06-01 15:57 UTC (permalink / raw)
To: Ard Biesheuvel
Cc: Linus Torvalds, Linux Kernel Mailing List, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
* Ard Biesheuvel <ardb@kernel.org> wrote:
> On Mon, 1 Jun 2020 at 15:24, Ingo Molnar <mingo@kernel.org> wrote:
> >
> > Linus,
> >
> > Please pull the latest efi/core git tree from:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git efi-core-2020-06-01
> >
> > # HEAD: e9524fb97ab5b41b85e1d3408f8e513433798f3c efi/x86: Don't blow away existing initrd
> >
> > The EFI changes for this cycle are:
> >
> > - preliminary changes for RISC-V
> > - Add support for setting the resolution on the EFI framebuffer
> > - Simplify kernel image loading for arm64
> > - Move .bss into .data via the linker script instead of relying on symbol
> > annotations.
> > - Get rid of __pure getters to access global variables
> > - Clean up the config table matching arrays
> > - Rename pr_efi/pr_efi_err to efi_info/efi_err, and use them consistently
> > - Simplify and unify initrd loading
> > - Parse the builtin command line on x86 (if provided)
> > - Implement printk() support, including support for wide character strings
> > - Simplify GDT handling in early mixed mode thunking code
> > - Some other minor fixes and cleanups
> >
> > Thanks,
> >
> > Ingo
> >
>
> Please note that Stephen reported a conflict with the ARM32 tree, due
> to the replacement of all instances of pr_efi_err() with efi_err(),
> including a couple in some ARM code that is being modified.
>
> https://lore.kernel.org/linux-next/20200529152907.2205a298@canb.auug.org.au/
Indeed!
Since these semantic conflicts and build failures would not trigger on
Linus's test builds normally, it might make sense to double check that
this comes up empty after both the EFI and the arm32 merge:
thule:~/tip> git grep -w pr_efi_err
thule:~/tip>
Thanks,
Ingo
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT PULL] EFI changes for v5.8
2020-06-01 13:24 Ingo Molnar
@ 2020-06-01 14:42 ` Ard Biesheuvel
2020-06-01 15:57 ` Ingo Molnar
2020-06-01 20:38 ` Linus Torvalds
2020-06-01 21:55 ` pr-tracker-bot
1 sibling, 2 replies; 9+ messages in thread
From: Ard Biesheuvel @ 2020-06-01 14:42 UTC (permalink / raw)
To: Ingo Molnar
Cc: Linus Torvalds, Linux Kernel Mailing List, Thomas Gleixner,
Borislav Petkov, Peter Zijlstra, Andrew Morton
On Mon, 1 Jun 2020 at 15:24, Ingo Molnar <mingo@kernel.org> wrote:
>
> Linus,
>
> Please pull the latest efi/core git tree from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git efi-core-2020-06-01
>
> # HEAD: e9524fb97ab5b41b85e1d3408f8e513433798f3c efi/x86: Don't blow away existing initrd
>
> The EFI changes for this cycle are:
>
> - preliminary changes for RISC-V
> - Add support for setting the resolution on the EFI framebuffer
> - Simplify kernel image loading for arm64
> - Move .bss into .data via the linker script instead of relying on symbol
> annotations.
> - Get rid of __pure getters to access global variables
> - Clean up the config table matching arrays
> - Rename pr_efi/pr_efi_err to efi_info/efi_err, and use them consistently
> - Simplify and unify initrd loading
> - Parse the builtin command line on x86 (if provided)
> - Implement printk() support, including support for wide character strings
> - Simplify GDT handling in early mixed mode thunking code
> - Some other minor fixes and cleanups
>
> Thanks,
>
> Ingo
>
Please note that Stephen reported a conflict with the ARM32 tree, due
to the replacement of all instances of pr_efi_err() with efi_err(),
including a couple in some ARM code that is being modified.
https://lore.kernel.org/linux-next/20200529152907.2205a298@canb.auug.org.au/
> ------------------>
> Ard Biesheuvel (20):
> efi/libstub: Make initrd file loader configurable
> efi/libstub: unify EFI call wrappers for non-x86
> efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN
> efi/libstub/random: Increase random alloc granularity
> efi/libstub/arm64: Replace 'preferred' offset with alignment check
> efi/libstub/arm64: Simplify randomized loading of kernel image
> efi/libstub: Add API function to allocate aligned memory
> efi/libstub/arm64: Switch to ordinary page allocator for kernel image
> efi/libstub: Move efi_relocate_kernel() into separate source file
> efi/libstub: Drop __pure getter for efi_system_table
> efi/libstub: Drop __pure getters for EFI stub options
> efi/libstub/x86: Avoid getter function for efi_is64
> efi: Clean up config table description arrays
> efi: Move arch_tables check to caller
> efi/libstub: Re-enable command line initrd loading for x86
> efi/libstub/x86: Work around LLVM ELF quirk build regression
> efi/libstub: Make efi_printk() input argument const char*
> efi/libstub: Use pool allocation for the command line
> efi/efivars: Add missing kobject_put() in sysfs entry creation error path
> efi/libstub: Add missing prototype for PE/COFF entry point
>
> Arvind Sankar (56):
> efi/gop: Remove redundant current_fb_base
> efi/gop: Move check for framebuffer before con_out
> efi/gop: Get mode information outside the loop
> efi/gop: Factor out locating the gop into a function
> efi/gop: Slightly re-arrange logic of find_gop
> efi/gop: Move variable declarations into loop block
> efi/gop: Use helper macros for populating lfb_base
> efi/gop: Use helper macros for find_bits
> efi/gop: Remove unreachable code from setup_pixel_info
> efi/gop: Add prototypes for query_mode and set_mode
> efi/gop: Allow specifying mode number on command line
> efi/gop: Allow specifying mode by <xres>x<yres>
> efi/gop: Allow specifying depth as well as resolution
> efi/gop: Allow automatically choosing the best mode
> efi/arm: Remove __efistub_global annotation
> efi/x86: Remove __efistub_global and add relocation check
> efi: Kill __efistub_global
> efi/x86: Use correct size for boot_params
> efi/libstub: Add a helper function to split 64-bit values
> efi/libstub: Move pr_efi/pr_efi_err into efi namespace
> efi/x86: Use efi_err for error messages
> efi/gop: Use efi_err for error messages
> efi/tpm: Use efi_err for error messages
> efi/libstub: Upgrade ignored dtb= argument message to error
> efi/x86: Move command-line initrd loading to efi_main
> efi/libstub: Unify initrd loading across architectures
> efi/x86: Support builtin command line
> efi/libstub: Check return value of efi_parse_options
> efi/libstub: Fix mixed mode boot issue after macro refactor
> efi/libstub: Include dependencies of efistub.h
> efi/libstub: Rename efi_[char16_]printk to efi_[char16_]puts
> efi/libstub: Buffer output of efi_puts
> efi/libstub: Add a basic printf implementation
> efi/libstub: Optimize for size instead of speed
> efi/printf: Drop %n format and L qualifier
> efi/printf: Add 64-bit and 8-bit integer support
> efi/printf: Factor out flags parsing and handle '%' earlier
> efi/printf: Fix minor bug in precision handling
> efi/printf: Merge 'p' with the integer formats
> efi/printf: Factor out width/precision parsing
> efi/printf: Factor out integer argument retrieval
> efi/printf: Handle null string input
> efi/printf: Refactor code to consolidate padding and output
> efi/printf: Abort on invalid format
> efi/printf: Turn vsprintf into vsnprintf
> efi/libstub: Implement printk-style logging
> efi/libstub: Add definitions for console input and events
> efi/gop: Add an option to list out the available GOP modes
> efi/printf: Add support for wchar_t (UTF-16)
> efi/libstub: Add UTF-8 decoding to efi_puts
> efi/libstub: Use %ls for filename
> efi/libstub: Get the exact UTF-8 length
> efi/libstub: Use snprintf with %ls to convert the command line
> efi/libstub: Don't parse overlong command lines
> efi/x86: Drop the special GDT for the EFI thunk
> efi/x86: Don't blow away existing initrd
>
> Atish Patra (1):
> efi/libstub: Move arm-stub to a common file
>
> Joe Perches (1):
> efi/libstub: Correct comment typos
>
> Zou Wei (1):
> efi/libstub/arm: Make install_memreserve_table static
>
>
> Documentation/fb/efifb.rst | 38 +-
> arch/arm/Kconfig | 2 +-
> arch/arm/boot/compressed/efi-header.S | 2 +-
> arch/arm/boot/compressed/vmlinux.lds.S | 2 +-
> arch/arm/include/asm/efi.h | 8 -
> arch/arm64/Kconfig | 2 +-
> arch/arm64/include/asm/efi.h | 8 -
> arch/arm64/kernel/efi-entry.S | 2 +-
> arch/arm64/kernel/efi-header.S | 2 +-
> arch/ia64/kernel/efi.c | 12 +-
> arch/x86/boot/compressed/efi_thunk_64.S | 19 +-
> arch/x86/boot/compressed/vmlinux.lds.S | 1 +
> arch/x86/include/asm/efi.h | 50 +-
> arch/x86/platform/efi/efi.c | 8 +-
> arch/x86/xen/efi.c | 2 +-
> drivers/firmware/efi/Kconfig | 15 +-
> drivers/firmware/efi/arm-init.c | 4 +-
> drivers/firmware/efi/efi.c | 44 +-
> drivers/firmware/efi/efivars.c | 4 +-
> drivers/firmware/efi/libstub/Makefile | 47 +-
> drivers/firmware/efi/libstub/alignedmem.c | 57 ++
> drivers/firmware/efi/libstub/arm32-stub.c | 12 +-
> drivers/firmware/efi/libstub/arm64-stub.c | 106 ++--
> drivers/firmware/efi/libstub/efi-stub-helper.c | 381 +++++++++-----
> .../efi/libstub/{arm-stub.c => efi-stub.c} | 93 ++--
> drivers/firmware/efi/libstub/efistub.h | 191 +++++--
> drivers/firmware/efi/libstub/fdt.c | 24 +-
> drivers/firmware/efi/libstub/file.c | 48 +-
> drivers/firmware/efi/libstub/gop.c | 583 +++++++++++++++++----
> drivers/firmware/efi/libstub/mem.c | 191 +------
> drivers/firmware/efi/libstub/pci.c | 10 +-
> drivers/firmware/efi/libstub/randomalloc.c | 6 +-
> drivers/firmware/efi/libstub/relocate.c | 174 ++++++
> drivers/firmware/efi/libstub/secureboot.c | 4 +-
> drivers/firmware/efi/libstub/tpm.c | 2 +-
> drivers/firmware/efi/libstub/vsprintf.c | 564 ++++++++++++++++++++
> drivers/firmware/efi/libstub/x86-stub.c | 155 +++---
> include/linux/efi.h | 6 +-
> 38 files changed, 2050 insertions(+), 829 deletions(-)
> create mode 100644 drivers/firmware/efi/libstub/alignedmem.c
> rename drivers/firmware/efi/libstub/{arm-stub.c => efi-stub.c} (83%)
> create mode 100644 drivers/firmware/efi/libstub/relocate.c
> create mode 100644 drivers/firmware/efi/libstub/vsprintf.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* [GIT PULL] EFI changes for v5.8
@ 2020-06-01 13:24 Ingo Molnar
2020-06-01 14:42 ` Ard Biesheuvel
2020-06-01 21:55 ` pr-tracker-bot
0 siblings, 2 replies; 9+ messages in thread
From: Ingo Molnar @ 2020-06-01 13:24 UTC (permalink / raw)
To: Linus Torvalds
Cc: linux-kernel, Ard Biesheuvel, Thomas Gleixner, Borislav Petkov,
Peter Zijlstra, Andrew Morton
Linus,
Please pull the latest efi/core git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git efi-core-2020-06-01
# HEAD: e9524fb97ab5b41b85e1d3408f8e513433798f3c efi/x86: Don't blow away existing initrd
The EFI changes for this cycle are:
- preliminary changes for RISC-V
- Add support for setting the resolution on the EFI framebuffer
- Simplify kernel image loading for arm64
- Move .bss into .data via the linker script instead of relying on symbol
annotations.
- Get rid of __pure getters to access global variables
- Clean up the config table matching arrays
- Rename pr_efi/pr_efi_err to efi_info/efi_err, and use them consistently
- Simplify and unify initrd loading
- Parse the builtin command line on x86 (if provided)
- Implement printk() support, including support for wide character strings
- Simplify GDT handling in early mixed mode thunking code
- Some other minor fixes and cleanups
Thanks,
Ingo
------------------>
Ard Biesheuvel (20):
efi/libstub: Make initrd file loader configurable
efi/libstub: unify EFI call wrappers for non-x86
efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN
efi/libstub/random: Increase random alloc granularity
efi/libstub/arm64: Replace 'preferred' offset with alignment check
efi/libstub/arm64: Simplify randomized loading of kernel image
efi/libstub: Add API function to allocate aligned memory
efi/libstub/arm64: Switch to ordinary page allocator for kernel image
efi/libstub: Move efi_relocate_kernel() into separate source file
efi/libstub: Drop __pure getter for efi_system_table
efi/libstub: Drop __pure getters for EFI stub options
efi/libstub/x86: Avoid getter function for efi_is64
efi: Clean up config table description arrays
efi: Move arch_tables check to caller
efi/libstub: Re-enable command line initrd loading for x86
efi/libstub/x86: Work around LLVM ELF quirk build regression
efi/libstub: Make efi_printk() input argument const char*
efi/libstub: Use pool allocation for the command line
efi/efivars: Add missing kobject_put() in sysfs entry creation error path
efi/libstub: Add missing prototype for PE/COFF entry point
Arvind Sankar (56):
efi/gop: Remove redundant current_fb_base
efi/gop: Move check for framebuffer before con_out
efi/gop: Get mode information outside the loop
efi/gop: Factor out locating the gop into a function
efi/gop: Slightly re-arrange logic of find_gop
efi/gop: Move variable declarations into loop block
efi/gop: Use helper macros for populating lfb_base
efi/gop: Use helper macros for find_bits
efi/gop: Remove unreachable code from setup_pixel_info
efi/gop: Add prototypes for query_mode and set_mode
efi/gop: Allow specifying mode number on command line
efi/gop: Allow specifying mode by <xres>x<yres>
efi/gop: Allow specifying depth as well as resolution
efi/gop: Allow automatically choosing the best mode
efi/arm: Remove __efistub_global annotation
efi/x86: Remove __efistub_global and add relocation check
efi: Kill __efistub_global
efi/x86: Use correct size for boot_params
efi/libstub: Add a helper function to split 64-bit values
efi/libstub: Move pr_efi/pr_efi_err into efi namespace
efi/x86: Use efi_err for error messages
efi/gop: Use efi_err for error messages
efi/tpm: Use efi_err for error messages
efi/libstub: Upgrade ignored dtb= argument message to error
efi/x86: Move command-line initrd loading to efi_main
efi/libstub: Unify initrd loading across architectures
efi/x86: Support builtin command line
efi/libstub: Check return value of efi_parse_options
efi/libstub: Fix mixed mode boot issue after macro refactor
efi/libstub: Include dependencies of efistub.h
efi/libstub: Rename efi_[char16_]printk to efi_[char16_]puts
efi/libstub: Buffer output of efi_puts
efi/libstub: Add a basic printf implementation
efi/libstub: Optimize for size instead of speed
efi/printf: Drop %n format and L qualifier
efi/printf: Add 64-bit and 8-bit integer support
efi/printf: Factor out flags parsing and handle '%' earlier
efi/printf: Fix minor bug in precision handling
efi/printf: Merge 'p' with the integer formats
efi/printf: Factor out width/precision parsing
efi/printf: Factor out integer argument retrieval
efi/printf: Handle null string input
efi/printf: Refactor code to consolidate padding and output
efi/printf: Abort on invalid format
efi/printf: Turn vsprintf into vsnprintf
efi/libstub: Implement printk-style logging
efi/libstub: Add definitions for console input and events
efi/gop: Add an option to list out the available GOP modes
efi/printf: Add support for wchar_t (UTF-16)
efi/libstub: Add UTF-8 decoding to efi_puts
efi/libstub: Use %ls for filename
efi/libstub: Get the exact UTF-8 length
efi/libstub: Use snprintf with %ls to convert the command line
efi/libstub: Don't parse overlong command lines
efi/x86: Drop the special GDT for the EFI thunk
efi/x86: Don't blow away existing initrd
Atish Patra (1):
efi/libstub: Move arm-stub to a common file
Joe Perches (1):
efi/libstub: Correct comment typos
Zou Wei (1):
efi/libstub/arm: Make install_memreserve_table static
Documentation/fb/efifb.rst | 38 +-
arch/arm/Kconfig | 2 +-
arch/arm/boot/compressed/efi-header.S | 2 +-
arch/arm/boot/compressed/vmlinux.lds.S | 2 +-
arch/arm/include/asm/efi.h | 8 -
arch/arm64/Kconfig | 2 +-
arch/arm64/include/asm/efi.h | 8 -
arch/arm64/kernel/efi-entry.S | 2 +-
arch/arm64/kernel/efi-header.S | 2 +-
arch/ia64/kernel/efi.c | 12 +-
arch/x86/boot/compressed/efi_thunk_64.S | 19 +-
arch/x86/boot/compressed/vmlinux.lds.S | 1 +
arch/x86/include/asm/efi.h | 50 +-
arch/x86/platform/efi/efi.c | 8 +-
arch/x86/xen/efi.c | 2 +-
drivers/firmware/efi/Kconfig | 15 +-
drivers/firmware/efi/arm-init.c | 4 +-
drivers/firmware/efi/efi.c | 44 +-
drivers/firmware/efi/efivars.c | 4 +-
drivers/firmware/efi/libstub/Makefile | 47 +-
drivers/firmware/efi/libstub/alignedmem.c | 57 ++
drivers/firmware/efi/libstub/arm32-stub.c | 12 +-
drivers/firmware/efi/libstub/arm64-stub.c | 106 ++--
drivers/firmware/efi/libstub/efi-stub-helper.c | 381 +++++++++-----
.../efi/libstub/{arm-stub.c => efi-stub.c} | 93 ++--
drivers/firmware/efi/libstub/efistub.h | 191 +++++--
drivers/firmware/efi/libstub/fdt.c | 24 +-
drivers/firmware/efi/libstub/file.c | 48 +-
drivers/firmware/efi/libstub/gop.c | 583 +++++++++++++++++----
drivers/firmware/efi/libstub/mem.c | 191 +------
drivers/firmware/efi/libstub/pci.c | 10 +-
drivers/firmware/efi/libstub/randomalloc.c | 6 +-
drivers/firmware/efi/libstub/relocate.c | 174 ++++++
drivers/firmware/efi/libstub/secureboot.c | 4 +-
drivers/firmware/efi/libstub/tpm.c | 2 +-
drivers/firmware/efi/libstub/vsprintf.c | 564 ++++++++++++++++++++
drivers/firmware/efi/libstub/x86-stub.c | 155 +++---
include/linux/efi.h | 6 +-
38 files changed, 2050 insertions(+), 829 deletions(-)
create mode 100644 drivers/firmware/efi/libstub/alignedmem.c
rename drivers/firmware/efi/libstub/{arm-stub.c => efi-stub.c} (83%)
create mode 100644 drivers/firmware/efi/libstub/relocate.c
create mode 100644 drivers/firmware/efi/libstub/vsprintf.c
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-06-02 6:34 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-25 8:07 [GIT PULL] EFI changes for v5.8 Ard Biesheuvel
2020-05-25 13:14 ` Ingo Molnar
2020-06-01 13:24 Ingo Molnar
2020-06-01 14:42 ` Ard Biesheuvel
2020-06-01 15:57 ` Ingo Molnar
2020-06-01 20:38 ` Linus Torvalds
2020-06-01 23:02 ` Linus Torvalds
2020-06-02 6:34 ` Ard Biesheuvel
2020-06-01 21:55 ` pr-tracker-bot
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).