diff options
author | Ard Biesheuvel <ardb@kernel.org> | 2023-02-01 11:48:12 +0300 |
---|---|---|
committer | Ard Biesheuvel <ardb@kernel.org> | 2023-02-04 11:19:02 +0300 |
commit | cf1d2ffcc6f17b422239f6ab34b078945d07f9aa (patch) | |
tree | a42d8efe5cc90616ea052bbbe84dfaad91b9f5a1 /arch/arm64/kernel/efi.c | |
parent | b0048092f7d3921d56f2c5bfa32062fac5e7500b (diff) | |
download | linux-cf1d2ffcc6f17b422239f6ab34b078945d07f9aa.tar.xz |
efi: Discover BTI support in runtime services regions
Add the generic plumbing to detect whether or not the runtime code
regions were constructed with BTI/IBT landing pads by the firmware,
permitting the OS to enable enforcement when mapping these regions into
the OS's address space.
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'arch/arm64/kernel/efi.c')
-rw-r--r-- | arch/arm64/kernel/efi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm64/kernel/efi.c b/arch/arm64/kernel/efi.c index fab05de2e12d..78ffd5aaddcb 100644 --- a/arch/arm64/kernel/efi.c +++ b/arch/arm64/kernel/efi.c @@ -110,7 +110,8 @@ static int __init set_permissions(pte_t *ptep, unsigned long addr, void *data) } int __init efi_set_mapping_permissions(struct mm_struct *mm, - efi_memory_desc_t *md) + efi_memory_desc_t *md, + bool has_bti) { BUG_ON(md->type != EFI_RUNTIME_SERVICES_CODE && md->type != EFI_RUNTIME_SERVICES_DATA); |