ARM: 9255/1: efi/dump UEFI runtime page tables for ARM

UEFI runtime page tables dump only for ARM64 at present,
but ARM support EFI and ARM_PTDUMP_DEBUGFS now. Since
ARM could potentially execute with a 1G/3G user/kernel
split, choosing 1G as the upper limit for UEFI runtime
end, with this, we could enable UEFI runtime page tables
on ARM.

Acked-by: Ard Biesheuvel <ardb@kernel.org>
Tested-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
This commit is contained in:
Wang Kefeng 2022-10-11 02:35:07 +01:00 committed by Russell King (Oracle)
parent b40b84b120
commit e513ffd881
3 changed files with 4 additions and 2 deletions

View File

@ -21,6 +21,7 @@ struct ptdump_info {
void ptdump_walk_pgd(struct seq_file *s, struct ptdump_info *info); void ptdump_walk_pgd(struct seq_file *s, struct ptdump_info *info);
#ifdef CONFIG_ARM_PTDUMP_DEBUGFS #ifdef CONFIG_ARM_PTDUMP_DEBUGFS
#define EFI_RUNTIME_MAP_END SZ_1G
void ptdump_debugfs_register(struct ptdump_info *info, const char *name); void ptdump_debugfs_register(struct ptdump_info *info, const char *name);
#else #else
static inline void ptdump_debugfs_register(struct ptdump_info *info, static inline void ptdump_debugfs_register(struct ptdump_info *info,

View File

@ -23,6 +23,7 @@ struct ptdump_info {
void ptdump_walk(struct seq_file *s, struct ptdump_info *info); void ptdump_walk(struct seq_file *s, struct ptdump_info *info);
#ifdef CONFIG_PTDUMP_DEBUGFS #ifdef CONFIG_PTDUMP_DEBUGFS
#define EFI_RUNTIME_MAP_END DEFAULT_MAP_WINDOW_64
void __init ptdump_debugfs_register(struct ptdump_info *info, const char *name); void __init ptdump_debugfs_register(struct ptdump_info *info, const char *name);
#else #else
static inline void ptdump_debugfs_register(struct ptdump_info *info, static inline void ptdump_debugfs_register(struct ptdump_info *info,

View File

@ -25,14 +25,14 @@
#include <asm/mmu.h> #include <asm/mmu.h>
#include <asm/pgalloc.h> #include <asm/pgalloc.h>
#if defined(CONFIG_PTDUMP_DEBUGFS) && defined(CONFIG_ARM64) #if defined(CONFIG_PTDUMP_DEBUGFS) || defined(CONFIG_ARM_PTDUMP_DEBUGFS)
#include <asm/ptdump.h> #include <asm/ptdump.h>
static struct ptdump_info efi_ptdump_info = { static struct ptdump_info efi_ptdump_info = {
.mm = &efi_mm, .mm = &efi_mm,
.markers = (struct addr_marker[]){ .markers = (struct addr_marker[]){
{ 0, "UEFI runtime start" }, { 0, "UEFI runtime start" },
{ DEFAULT_MAP_WINDOW_64, "UEFI runtime end" }, { EFI_RUNTIME_MAP_END, "UEFI runtime end" },
{ -1, NULL } { -1, NULL }
}, },
.base_addr = 0, .base_addr = 0,