Re: [PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
On Sat, Sep 6, 2014 at 7:12 AM, Arnd Bergmann wrote: > On Friday 05 September 2014 16:21:42 beh...@converseincode.com wrote: >> From: Mark Charlebois >> >> Add missing abort for arch aarch64. >> >> This patch makes the aarch64 kernel able to compile with gcc or clang. >> >> Signed-off-by: Mark Charlebois >> Signed-off-by: Behan Webster > > 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? I just tried recompiling for vexpress64 without the abort call and it seems the patch is no longer needed. When I added this I mimicked the behavior of abort for arm which at the time was defined in the kernel code. Sorry for the churn. -Mark > >> 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
On Friday 05 September 2014 16:21:42 beh...@converseincode.com wrote: > From: Mark Charlebois > > Add missing abort for arch aarch64. > > This patch makes the aarch64 kernel able to compile with gcc or clang. > > Signed-off-by: Mark Charlebois > Signed-off-by: Behan Webster 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
On Friday 05 September 2014 16:21:42 beh...@converseincode.com wrote: From: Mark Charlebois charl...@gmail.com Add missing abort for arch aarch64. This patch makes the aarch64 kernel able to compile with gcc or clang. Signed-off-by: Mark Charlebois charl...@gmail.com Signed-off-by: Behan Webster beh...@converseincode.com 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
On Sat, Sep 6, 2014 at 7:12 AM, Arnd Bergmann a...@arndb.de wrote: On Friday 05 September 2014 16:21:42 beh...@converseincode.com wrote: From: Mark Charlebois charl...@gmail.com Add missing abort for arch aarch64. This patch makes the aarch64 kernel able to compile with gcc or clang. Signed-off-by: Mark Charlebois charl...@gmail.com Signed-off-by: Behan Webster beh...@converseincode.com 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? I just tried recompiling for vexpress64 without the abort call and it seems the patch is no longer needed. When I added this I mimicked the behavior of abort for arm which at the time was defined in the kernel code. Sorry for the churn. -Mark 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
From: Mark Charlebois Add missing abort for arch aarch64. This patch makes the aarch64 kernel able to compile with gcc or clang. Signed-off-by: Mark Charlebois Signed-off-by: Behan Webster --- 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); + void __init trap_init(void) { return; -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] arm64: LLVMLinux: Add missing abort() for AARCH64
From: Mark Charlebois charl...@gmail.com Add missing abort for arch aarch64. This patch makes the aarch64 kernel able to compile with gcc or clang. Signed-off-by: Mark Charlebois charl...@gmail.com Signed-off-by: Behan Webster beh...@converseincode.com --- 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); + void __init trap_init(void) { return; -- 1.9.1 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/