[PATCH] efi: arm64: add debugfs node to dump UEFI runtime page tables
Mark Rutland
mark.rutland at arm.com
Thu Jun 30 07:09:31 PDT 2016
On Thu, Jun 30, 2016 at 12:01:46PM +0200, Ard Biesheuvel wrote:
> Register the debugfs node 'efi_page_tables' to allow the UEFI runtime
> page tables to be inspected. Note that ARM does not have 'asm/ptdump.h'
> [yet] so for now, this is arm64 only.
>
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel at linaro.org>
> ---
>
> This patch could be helpful in assessing the series 'arm64: avoid block
> entries that we need to split later' that I sent out yesterday.
It's probably worth noting that this is based on the arm64 for-next/core
branch. I don't know if/how we can orgnise branches for merging this.
> drivers/firmware/efi/arm-runtime.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/drivers/firmware/efi/arm-runtime.c b/drivers/firmware/efi/arm-runtime.c
> index 17ccf0a8787a..4197a1da013d 100644
> --- a/drivers/firmware/efi/arm-runtime.c
> +++ b/drivers/firmware/efi/arm-runtime.c
> @@ -39,6 +39,26 @@ static struct mm_struct efi_mm = {
> .mmlist = LIST_HEAD_INIT(efi_mm.mmlist),
> };
>
> +#ifdef CONFIG_ARM64
If you use CONFIG_ARM64_PTDUMP for the moment, then we won't have some
unused structs lying around when the feature is unused.
Otherwise, I agree that this is a useful debuging feature. FWIW, either
way:
Acked-by: Mark Rutland <mark.rutland at arm.com>
Thanks,
Mark.
> +#include <asm/ptdump.h>
> +
> +static struct ptdump_info efi_ptdump_info = {
> + .mm = &efi_mm,
> + .markers = (struct addr_marker[]){
> + { 0, "UEFI runtime start" },
> + { TASK_SIZE_64, "UEFI runtime end" }
> + },
> + .base_addr = 0,
> +};
> +
> +static int __init ptdump_init(void)
> +{
> + return ptdump_register(&efi_ptdump_info, "efi_page_tables");
> +}
> +device_initcall(ptdump_init);
> +
> +#endif
> +
> static bool __init efi_virtmap_init(void)
> {
> efi_memory_desc_t *md;
> --
> 2.7.4
>
More information about the linux-arm-kernel
mailing list