All of lore.kernel.org
 help / color / mirror / Atom feed
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>,
	Atish Patra <atish.patra@wdc.com>,
	Palmer Dabbelt <palmerdabbelt@google.com>,
	Zou Wei <zou_wei@huawei.com>
Subject: [PATCH 31/33] efi/libstub/x86: Avoid getter function for efi_is64
Date: Fri, 24 Apr 2020 15:05:29 +0200	[thread overview]
Message-ID: <20200424130531.30518-32-ardb@kernel.org> (raw)
In-Reply-To: <20200424130531.30518-1-ardb@kernel.org>

We no longer need to take special care when using global variables
in the EFI stub, so switch to a simple symbol reference for efi_is64.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
---
 arch/x86/include/asm/efi.h              | 11 ++++++++---
 drivers/firmware/efi/libstub/x86-stub.c |  8 --------
 2 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/arch/x86/include/asm/efi.h b/arch/x86/include/asm/efi.h
index 78e839925a81..cd0c3fbf6156 100644
--- a/arch/x86/include/asm/efi.h
+++ b/arch/x86/include/asm/efi.h
@@ -225,14 +225,19 @@ efi_status_t efi_set_virtual_address_map(unsigned long memory_map_size,
 
 /* arch specific definitions used by the stub code */
 
-__attribute_const__ bool efi_is_64bit(void);
+extern const bool efi_is64;
+
+static inline bool efi_is_64bit(void)
+{
+	if (IS_ENABLED(CONFIG_EFI_MIXED))
+		return efi_is64;
+	return IS_ENABLED(CONFIG_X86_64);
+}
 
 static inline bool efi_is_native(void)
 {
 	if (!IS_ENABLED(CONFIG_X86_64))
 		return true;
-	if (!IS_ENABLED(CONFIG_EFI_MIXED))
-		return true;
 	return efi_is_64bit();
 }
 
diff --git a/drivers/firmware/efi/libstub/x86-stub.c b/drivers/firmware/efi/libstub/x86-stub.c
index bddbc103a34b..597793fe8d22 100644
--- a/drivers/firmware/efi/libstub/x86-stub.c
+++ b/drivers/firmware/efi/libstub/x86-stub.c
@@ -21,16 +21,8 @@
 #define MAXMEM_X86_64_4LEVEL (1ull << 46)
 
 const efi_system_table_t *efi_system_table;
-extern const bool efi_is64;
 extern u32 image_offset;
 
-__attribute_const__ bool efi_is_64bit(void)
-{
-	if (IS_ENABLED(CONFIG_EFI_MIXED))
-		return efi_is64;
-	return IS_ENABLED(CONFIG_X86_64);
-}
-
 static efi_status_t
 preserve_pci_rom_image(efi_pci_io_protocol_t *pci, struct pci_setup_rom **__rom)
 {
-- 
2.17.1


  parent reply	other threads:[~2020-04-24 13:07 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-24 13:04 [GIT PULL 00/33] EFI updates for v5.8 Ard Biesheuvel
2020-04-24 13:04 ` [PATCH 01/33] efi/libstub: Move arm-stub to a common file Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 02/33] efi/libstub: Make initrd file loader configurable Ard Biesheuvel
2020-04-24 13:15   ` Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 03/33] efi/libstub: Unify EFI call wrappers for non-x86 Ard Biesheuvel
2020-05-03 15:09   ` Guenter Roeck
2020-05-03 16:09     ` Arvind Sankar
2020-05-03 16:11       ` Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 04/33] efi/libstub/arm: Make install_memreserve_table static Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 05/33] efi/gop: Remove redundant current_fb_base Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 06/33] efi/gop: Move check for framebuffer before con_out Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 07/33] efi/gop: Get mode information outside the loop Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 08/33] efi/gop: Factor out locating the gop into a function Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 09/33] efi/gop: Slightly re-arrange logic of find_gop Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 10/33] efi/gop: Move variable declarations into loop block Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 11/33] efi/gop: Use helper macros for populating lfb_base Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 12/33] efi/gop: Use helper macros for find_bits Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 13/33] efi/gop: Remove unreachable code from setup_pixel_info Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 14/33] efi/gop: Add prototypes for query_mode and set_mode Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 15/33] efi/gop: Allow specifying mode number on command line Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 16/33] efi/gop: Allow specifying mode by <xres>x<yres> Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 17/33] efi/gop: Allow specifying depth as well as resolution Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 18/33] efi/gop: Allow automatically choosing the best mode Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 19/33] efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 20/33] efi/libstub/random: Increase random alloc granularity Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 21/33] efi/libstub/arm64: Replace 'preferred' offset with alignment check Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 22/33] efi/libstub/arm64: Simplify randomized loading of kernel image Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 23/33] efi/libstub: Add API function to allocate aligned memory Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 24/33] efi/libstub/arm64: Switch to ordinary page allocator for kernel image Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 25/33] efi/libstub: Move efi_relocate_kernel() into separate source file Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 26/33] efi/arm: Remove __efistub_global annotation Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 27/33] efi/x86: Remove __efistub_global and add relocation check Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 28/33] efi: Kill __efistub_global Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 29/33] efi/libstub: Drop __pure getter for efi_system_table Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 30/33] efi/libstub: Drop __pure getters for EFI stub options Ard Biesheuvel
2020-04-24 13:05 ` Ard Biesheuvel [this message]
2020-04-24 13:05 ` [PATCH 32/33] efi: Clean up config table description arrays Ard Biesheuvel
2020-04-24 13:05 ` [PATCH 33/33] efi: Move arch_tables check to caller Ard Biesheuvel
2020-04-25  8:27 ` [GIT PULL 00/33] EFI updates for v5.8 Ingo Molnar
2020-04-25  9:57   ` Ard Biesheuvel

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=20200424130531.30518-32-ardb@kernel.org \
    --to=ardb@kernel.org \
    --cc=atish.patra@wdc.com \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=nivedita@alum.mit.edu \
    --cc=palmerdabbelt@google.com \
    --cc=tglx@linutronix.de \
    --cc=zou_wei@huawei.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.