[Crash-utility] [PATCH][v2] Remove __exception_text_start and __exception_text_end for ARM64
Dave Anderson
anderson at redhat.com
Mon Dec 23 14:01:56 UTC 2019
----- Original Message -----
> __exception_text_start and __exception_text_end is used to group functions
> and place according to linker script in such a way to achieve
> kprobe blacklist. Linux commit b6e43c0e3129 ("arm64: remove __exception
> annotations") has removed __exception_text_start and
> __exception_text_end and uses NOKPROBE_SYMBOL() for blacklist kprobes.
>
> So removing references of __exception_text_start and __exception_text_end
> for ARM64.
NAK for a couple of reasons...
First, they cannot be removed for backward-compatibility purposes, and secondly
an alternative method is required for arm64_back_trace_cmd() for handling
exception frames.
Dave
> Signed-off-by: Prabhakar Kushwaha <pkushwaha at marvell.com>
> Cc: James Morse <james.morse at arm.com>
> ---
> Changes for v2: Updated description and added CC-By
>
> arm64.c | 10 +---------
> 1 file changed, 1 insertion(+), 9 deletions(-)
>
> diff --git a/arm64.c b/arm64.c
> index 1b024a4..56ec088 100644
> --- a/arm64.c
> +++ b/arm64.c
> @@ -673,8 +673,6 @@ arm64_dump_machdep_table(ulong arg)
> fprintf(fp, " kimage_voffset: %016lx\n", ms->kimage_voffset);
> }
> fprintf(fp, " phys_offset: %lx\n", ms->phys_offset);
> - fprintf(fp, "__exception_text_start: %lx\n", ms->__exception_text_start);
> - fprintf(fp, " __exception_text_end: %lx\n", ms->__exception_text_end);
> fprintf(fp, " __irqentry_text_start: %lx\n", ms->__irqentry_text_start);
> fprintf(fp, " __irqentry_text_end: %lx\n", ms->__irqentry_text_end);
> fprintf(fp, " exp_entry1_start: %lx\n", ms->exp_entry1_start);
> @@ -1644,10 +1642,6 @@ arm64_stackframe_init(void)
> machdep->machspec->kern_eframe_offset = SIZE(pt_regs);
> }
>
> - machdep->machspec->__exception_text_start =
> - symbol_value("__exception_text_start");
> - machdep->machspec->__exception_text_end =
> - symbol_value("__exception_text_end");
> if ((sp1 = kernel_symbol_search("__irqentry_text_start")) &&
> (sp2 = kernel_symbol_search("__irqentry_text_end"))) {
> machdep->machspec->__irqentry_text_start = sp1->value;
> @@ -1861,9 +1855,7 @@ arm64_in_exception_text(ulong ptr)
> {
> struct machine_specific *ms = machdep->machspec;
>
> - if ((ptr >= ms->__exception_text_start) &&
> - (ptr < ms->__exception_text_end))
> - return TRUE;
> + return TRUE;
>
> if (ms->__irqentry_text_start && ms->__irqentry_text_end &&
> ((ptr >= ms->__irqentry_text_start) &&
> --
> 2.17.1
>
>
> --
> Crash-utility mailing list
> Crash-utility at redhat.com
> https://www.redhat.com/mailman/listinfo/crash-utility
>
More information about the Crash-utility
mailing list