Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1528382
| From | David Howells <dhowells@redhat.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 7/7] efi: Add EFI_SECURE_BOOT bit [ver #3] |
| Date | 2016-11-23 14:00 +0100 |
| Message-ID | <sGFjA-51L-13@gated-at.bofh.it> (permalink) |
| References | <sGFjA-51L-7@gated-at.bofh.it> |
| Organization | Red Hat UK Ltd. Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod Street, Windsor, Berkshire, SI4 1TE, United Kingdom. Registered in England and Wales under Company Registration No. 3798903 |
From: Josh Boyer <jwboyer@fedoraproject.org>
UEFI machines can be booted in Secure Boot mode. Add a EFI_SECURE_BOOT bit
that can be passed to efi_enabled() to find out whether secure boot is
enabled.
This will be used by the SysRq+x handler, registered by the x86 arch, to find
out whether secure boot mode is enabled so that it can be disabled.
Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
Signed-off-by: David Howells <dhowells@redhat.com>
---
arch/x86/kernel/setup.c | 5 +++++
include/linux/efi.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 9c337b0e8ba7..aa972b4cb680 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -1160,6 +1160,11 @@ void __init setup_arch(char **cmdline_p)
io_delay_init();
+ if (IS_ENABLED(CONFIG_EFI) && boot_params.secure_boot) {
+ set_bit(EFI_SECURE_BOOT, &efi.flags);
+ pr_info("Secure boot enabled\n");
+ }
+
/*
* Parse the ACPI tables for possible boot-time SMP configuration.
*/
diff --git a/include/linux/efi.h b/include/linux/efi.h
index 5d6c60a9caf8..333d31bf55bf 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
@@ -1066,6 +1066,7 @@ extern int __init efi_setup_pcdp_console(char *);
#define EFI_ARCH_1 7 /* First arch-specific bit */
#define EFI_DBG 8 /* Print additional debug info at runtime */
#define EFI_NX_PE_DATA 9 /* Can runtime data regions be mapped non-executable? */
+#define EFI_SECURE_BOOT 10 /* Are we in Secure Boot mode? */
#ifdef CONFIG_EFI
/*
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH 0/7] efi: Pass secure boot mode to kernel [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 2/7] x86/efi: Allow invocation of arbitrary runtime services [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 4/7] efi: Add SHIM and image security database GUID definitions [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 7/7] efi: Add EFI_SECURE_BOOT bit [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 1/7] efi: use typed function pointers for runtime services table [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 6/7] efi: Disable secure boot if shim is in insecure mode [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
[PATCH 5/7] efi: Get the secure boot status [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
Re: [PATCH 5/7] efi: Get the secure boot status [ver #3] James Bottomley <James.Bottomley@HansenPartnership.com> - 2016-11-24 20:50 +0100
[PATCH 3/7] arm/efi: Allow invocation of arbitrary runtime services [ver #3] David Howells <dhowells@redhat.com> - 2016-11-23 14:00 +0100
csiph-web