lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191224151025.32482-1-ardb@kernel.org>
Date:   Tue, 24 Dec 2019 16:10:00 +0100
From:   Ard Biesheuvel <ardb@...nel.org>
To:     linux-efi@...r.kernel.org, Ingo Molnar <mingo@...nel.org>,
        Thomas Gleixner <tglx@...utronix.de>
Cc:     Ard Biesheuvel <ardb@...nel.org>, linux-kernel@...r.kernel.org,
        Arvind Sankar <nivedita@...m.mit.edu>
Subject: [GIT PULL 00/25] EFI updates for v5.6

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ