Re: [PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64

From: Arnd Bergmann
Date: Sat Sep 06 2014 - 10:13:42 EST


On Friday 05 September 2014 16:21:42 behanw@xxxxxxxxxxxxxxxxxx wrote:
> From: Mark Charlebois <charlebm@xxxxxxxxx>
>
> Add missing abort for arch aarch64.
>
> This patch makes the aarch64 kernel able to compile with gcc or clang.
>
> Signed-off-by: Mark Charlebois <charlebm@xxxxxxxxx>
> Signed-off-by: Behan Webster <behanw@xxxxxxxxxxxxxxxxxx>

You don't describe why this is needed. When does clang emit an abort()
call? Is that the expected behavior when not linking against a full
C library?

> arch/arm64/kernel/traps.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
> index 02cd3f0..123cd6e 100644
> --- a/arch/arm64/kernel/traps.c
> +++ b/arch/arm64/kernel/traps.c
> @@ -349,6 +349,15 @@ void __pgd_error(const char *file, int line, unsigned long val)
> pr_crit("%s:%d: bad pgd %016lx.\n", file, line, val);
> }
>
> +void abort(void)
> +{
> + BUG();
> +
> + /* if that doesn't kill us, halt */
> + panic("Oops failed to kill thread");
> +}
> +EXPORT_SYMBOL(abort);

I don't see the point in doing both BUG() and panic(). Doesn't panic()
already print all the information you want in this case?

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/