[PATCHv2 1/7] arm64: Add ASM_BUG()
From: mark.rutland@arm.com (Mark Rutland)
Date: 2017-08-08 16:10:51
On Tue, Aug 08, 2017 at 04:58:53PM +0100, Catalin Marinas wrote:
On Tue, Aug 08, 2017 at 04:31:12PM +0100, Mark Rutland wrote:quoted
On Wed, Jul 26, 2017 at 07:18:24PM +0100, Mark Rutland wrote:quoted
+#define __BUG_ENTRY(flags) \ + .pushsection __bug_table,"a"; \ + .align 2; \ + 0: .long 1f - 0b; \ +_BUGVERBOSE_LOCATION(__FILE__, __LINE__) \ + .short flags; \ + .popsection; \ + 1: +#else +#define __BUG_ENTRY(flags) +#endif + +#define ASM_BUG_FLAGS(flags) \ + __BUG_ENTRY(0) \ + brk BUG_BRK_IMMI accidentally dropped the flags here, which turns all WARN*s into BUGs. I've fixed this up to pass the flags to __BUG_ENTRY(). I've pushed out updated arm64/exception-stack and arm64/vmap-stack branches.I'll pull arm64/exception-stack into for-next/core (I haven't got to the vmap-stack series yet).
If you could hold off for a day, I'd like to make one final change and prevent use of the final record's LR value, where FP is NULL, since that LR isn't meaningful, and makes the backtrace look weird: [ 2785.650646] [<ffff000008082cb0>] el0_svc_naked+0x24/0x28 [ 2785.656016] [<0000ffffaf717554>] 0xffffaf717554 Otherwise, I can do that as a fixup. Thanks, Mark.