linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack
@ 2021-08-04 18:17 Mark Brown
  2021-08-06  9:09 ` Will Deacon
  2021-08-06 16:04 ` Catalin Marinas
  0 siblings, 2 replies; 3+ messages in thread
From: Mark Brown @ 2021-08-04 18:17 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon; +Cc: linux-arm-kernel, Mark Brown

When converting arm64 to modern assembler annotations __bad_stack was left
as a raw local label without annotations. While this will have little if
any practical impact at present it may cause issues in the future if we
start using the annotations for things like reliable stack trace. Add
SYM_CODE annotations to fix this.

Signed-off-by: Mark Brown <broonie@kernel.org>
---
 arch/arm64/kernel/entry.S | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
index 923ee2ac85fd..572f72f20646 100644
--- a/arch/arm64/kernel/entry.S
+++ b/arch/arm64/kernel/entry.S
@@ -535,12 +535,13 @@ SYM_CODE_START(vectors)
 SYM_CODE_END(vectors)
 
 #ifdef CONFIG_VMAP_STACK
+SYM_CODE_START_LOCAL(__bad_stack)
 	/*
 	 * We detected an overflow in kernel_ventry, which switched to the
 	 * overflow stack. Stash the exception regs, and head to our overflow
 	 * handler.
 	 */
-__bad_stack:
+
 	/* Restore the original x0 value */
 	mrs	x0, tpidrro_el0
 
@@ -560,6 +561,7 @@ __bad_stack:
 	/* Time to die */
 	bl	handle_bad_stack
 	ASM_BUG()
+SYM_CODE_END(__bad_stack)
 #endif /* CONFIG_VMAP_STACK */
 
 
-- 
2.20.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack
  2021-08-04 18:17 [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack Mark Brown
@ 2021-08-06  9:09 ` Will Deacon
  2021-08-06 16:04 ` Catalin Marinas
  1 sibling, 0 replies; 3+ messages in thread
From: Will Deacon @ 2021-08-06  9:09 UTC (permalink / raw)
  To: Mark Brown; +Cc: Catalin Marinas, linux-arm-kernel

On Wed, Aug 04, 2021 at 07:17:10PM +0100, Mark Brown wrote:
> When converting arm64 to modern assembler annotations __bad_stack was left
> as a raw local label without annotations. While this will have little if
> any practical impact at present it may cause issues in the future if we
> start using the annotations for things like reliable stack trace. Add
> SYM_CODE annotations to fix this.
> 
> Signed-off-by: Mark Brown <broonie@kernel.org>
> ---
>  arch/arm64/kernel/entry.S | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
> index 923ee2ac85fd..572f72f20646 100644
> --- a/arch/arm64/kernel/entry.S
> +++ b/arch/arm64/kernel/entry.S
> @@ -535,12 +535,13 @@ SYM_CODE_START(vectors)
>  SYM_CODE_END(vectors)
>  
>  #ifdef CONFIG_VMAP_STACK
> +SYM_CODE_START_LOCAL(__bad_stack)
>  	/*
>  	 * We detected an overflow in kernel_ventry, which switched to the
>  	 * overflow stack. Stash the exception regs, and head to our overflow
>  	 * handler.
>  	 */
> -__bad_stack:
> +
>  	/* Restore the original x0 value */
>  	mrs	x0, tpidrro_el0
>  
> @@ -560,6 +561,7 @@ __bad_stack:
>  	/* Time to die */
>  	bl	handle_bad_stack
>  	ASM_BUG()
> +SYM_CODE_END(__bad_stack)
>  #endif /* CONFIG_VMAP_STACK */

Acked-by: Will Deacon <will@kernel.org>

Will

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack
  2021-08-04 18:17 [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack Mark Brown
  2021-08-06  9:09 ` Will Deacon
@ 2021-08-06 16:04 ` Catalin Marinas
  1 sibling, 0 replies; 3+ messages in thread
From: Catalin Marinas @ 2021-08-06 16:04 UTC (permalink / raw)
  To: Will Deacon, Mark Brown; +Cc: linux-arm-kernel

On Wed, 4 Aug 2021 19:17:10 +0100, Mark Brown wrote:
> When converting arm64 to modern assembler annotations __bad_stack was left
> as a raw local label without annotations. While this will have little if
> any practical impact at present it may cause issues in the future if we
> start using the annotations for things like reliable stack trace. Add
> SYM_CODE annotations to fix this.

Applied to arm64 (for-next/misc), thanks!

[1/1] arm64: entry: Add SYM_CODE annotation for __bad_stack
      https://git.kernel.org/arm64/c/ede3241a5f23

-- 
Catalin


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-08-06 16:06 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-04 18:17 [PATCH] arm64: entry: Add SYM_CODE annotation for __bad_stack Mark Brown
2021-08-06  9:09 ` Will Deacon
2021-08-06 16:04 ` Catalin Marinas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).