All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RESEND] ARM: Add unwinding annotations to __loop.*delay functions
@ 2021-12-23  2:56 ` Xu Kuohai
  0 siblings, 0 replies; 2+ messages in thread
From: Xu Kuohai @ 2021-12-23  2:56 UTC (permalink / raw)
  To: linux-arm-kernel, linux, linux-kernel

The unwind directives can't handle nested function entries, so only the
outermost function __loop_udelay is annotated, and the inner nested
entries share the same unwind info with __loop_udelay.

Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
---
 arch/arm/lib/delay-loop.S | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm/lib/delay-loop.S b/arch/arm/lib/delay-loop.S
index 3ccade0f8130..f0a076f9abc5 100644
--- a/arch/arm/lib/delay-loop.S
+++ b/arch/arm/lib/delay-loop.S
@@ -7,6 +7,7 @@
 #include <linux/linkage.h>
 #include <asm/assembler.h>
 #include <asm/delay.h>
+#include <asm/unwind.h>
 
 		.text
 
@@ -21,6 +22,7 @@
  */
 
 ENTRY(__loop_udelay)
+UNWIND(.fnstart)
 		ldr	r2, .LC1
 		mul	r0, r2, r0		@ r0 = delay_us * UDELAY_MULT
 ENTRY(__loop_const_udelay)			@ 0 <= r0 <= 0xfffffaf0
@@ -54,6 +56,7 @@ ENTRY(__loop_delay)
 #endif
 		bhi	__loop_delay
 		ret	lr
-ENDPROC(__loop_udelay)
-ENDPROC(__loop_const_udelay)
 ENDPROC(__loop_delay)
+ENDPROC(__loop_const_udelay)
+UNWIND(.fnend)
+ENDPROC(__loop_udelay)
-- 
2.27.0


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

* [PATCH RESEND] ARM: Add unwinding annotations to __loop.*delay functions
@ 2021-12-23  2:56 ` Xu Kuohai
  0 siblings, 0 replies; 2+ messages in thread
From: Xu Kuohai @ 2021-12-23  2:56 UTC (permalink / raw)
  To: linux-arm-kernel, linux, linux-kernel

The unwind directives can't handle nested function entries, so only the
outermost function __loop_udelay is annotated, and the inner nested
entries share the same unwind info with __loop_udelay.

Signed-off-by: Xu Kuohai <xukuohai@huawei.com>
---
 arch/arm/lib/delay-loop.S | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm/lib/delay-loop.S b/arch/arm/lib/delay-loop.S
index 3ccade0f8130..f0a076f9abc5 100644
--- a/arch/arm/lib/delay-loop.S
+++ b/arch/arm/lib/delay-loop.S
@@ -7,6 +7,7 @@
 #include <linux/linkage.h>
 #include <asm/assembler.h>
 #include <asm/delay.h>
+#include <asm/unwind.h>
 
 		.text
 
@@ -21,6 +22,7 @@
  */
 
 ENTRY(__loop_udelay)
+UNWIND(.fnstart)
 		ldr	r2, .LC1
 		mul	r0, r2, r0		@ r0 = delay_us * UDELAY_MULT
 ENTRY(__loop_const_udelay)			@ 0 <= r0 <= 0xfffffaf0
@@ -54,6 +56,7 @@ ENTRY(__loop_delay)
 #endif
 		bhi	__loop_delay
 		ret	lr
-ENDPROC(__loop_udelay)
-ENDPROC(__loop_const_udelay)
 ENDPROC(__loop_delay)
+ENDPROC(__loop_const_udelay)
+UNWIND(.fnend)
+ENDPROC(__loop_udelay)
-- 
2.27.0


_______________________________________________
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] 2+ messages in thread

end of thread, other threads:[~2021-12-23  2:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-23  2:56 [PATCH RESEND] ARM: Add unwinding annotations to __loop.*delay functions Xu Kuohai
2021-12-23  2:56 ` Xu Kuohai

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.