diff mbox series

arm64: sedi: Annotate SEDI entry points using new style annotations

Message ID 20200122221045.24857-1-broonie@kernel.org (mailing list archive)
State Mainlined
Commit 1242b9b303277425c01e605af96e9fb9fb80c399
Headers show
Series arm64: sedi: Annotate SEDI entry points using new style annotations | expand

Commit Message

Mark Brown Jan. 22, 2020, 10:10 p.m. UTC
In an effort to clarify and simplify the annotation of assembly
functions new macros have been introduced. These replace ENTRY and
ENDPROC with two different annotations for normal functions and those
with unusual calling conventions.

The SEDI entry points are currently annotated as normal functions but
are called from non-kernel contexts with non-standard calling convention
and should therefore be annotated as such so do so.

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

Comments

Punit Agrawal Jan. 23, 2020, 3:01 a.m. UTC | #1
Hi Mark,

Mark Brown <broonie@kernel.org> writes:

> In an effort to clarify and simplify the annotation of assembly
> functions new macros have been introduced. These replace ENTRY and
> ENDPROC with two different annotations for normal functions and those
> with unusual calling conventions.
>
> The SEDI entry points are currently annotated as normal functions but
> are called from non-kernel contexts with non-standard calling convention
> and should therefore be annotated as such so do so.
>
> Signed-off-by: Mark Brown <broonie@kernel.org>

s/SEDI/SDEI

There is a typo in $SUBJECT and the commit log. The code itself appears
to be fine.

Thanks,
Punit

> ---
>  arch/arm64/kernel/entry.S | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
> index 5d47687592ec..65d126228046 100644
> --- a/arch/arm64/kernel/entry.S
> +++ b/arch/arm64/kernel/entry.S
> @@ -938,7 +938,7 @@ NOKPROBE(ret_from_fork)
>   */
>  .ltorg
>  .pushsection ".entry.tramp.text", "ax"
> -ENTRY(__sdei_asm_entry_trampoline)
> +SYM_CODE_START(__sdei_asm_entry_trampoline)
>  	mrs	x4, ttbr1_el1
>  	tbz	x4, #USER_ASID_BIT, 1f
>  
> @@ -960,7 +960,7 @@ ENTRY(__sdei_asm_entry_trampoline)
>  	ldr	x4, =__sdei_asm_handler
>  #endif
>  	br	x4
> -ENDPROC(__sdei_asm_entry_trampoline)
> +SYM_CODE_END(__sdei_asm_entry_trampoline)
>  NOKPROBE(__sdei_asm_entry_trampoline)
>  
>  /*
> @@ -970,14 +970,14 @@ NOKPROBE(__sdei_asm_entry_trampoline)
>   * x2: exit_mode
>   * x4: struct sdei_registered_event argument from registration time.
>   */
> -ENTRY(__sdei_asm_exit_trampoline)
> +SYM_CODE_START(__sdei_asm_exit_trampoline)
>  	ldr	x4, [x4, #(SDEI_EVENT_INTREGS + S_ORIG_ADDR_LIMIT)]
>  	cbnz	x4, 1f
>  
>  	tramp_unmap_kernel	tmp=x4
>  
>  1:	sdei_handler_exit exit_mode=x2
> -ENDPROC(__sdei_asm_exit_trampoline)
> +SYM_CODE_END(__sdei_asm_exit_trampoline)
>  NOKPROBE(__sdei_asm_exit_trampoline)
>  	.ltorg
>  .popsection		// .entry.tramp.text
> @@ -1002,7 +1002,7 @@ __sdei_asm_trampoline_next_handler:
>   * follow SMC-CC. We save (or retrieve) all the registers as the handler may
>   * want them.
>   */
> -ENTRY(__sdei_asm_handler)
> +SYM_CODE_START(__sdei_asm_handler)
>  	stp     x2, x3, [x1, #SDEI_EVENT_INTREGS + S_PC]
>  	stp     x4, x5, [x1, #SDEI_EVENT_INTREGS + 16 * 2]
>  	stp     x6, x7, [x1, #SDEI_EVENT_INTREGS + 16 * 3]
> @@ -1085,6 +1085,6 @@ alternative_else_nop_endif
>  	tramp_alias	dst=x5, sym=__sdei_asm_exit_trampoline
>  	br	x5
>  #endif
> -ENDPROC(__sdei_asm_handler)
> +SYM_CODE_END(__sdei_asm_handler)
>  NOKPROBE(__sdei_asm_handler)
>  #endif /* CONFIG_ARM_SDE_INTERFACE */
Mark Brown Jan. 23, 2020, 9:54 p.m. UTC | #2
On Thu, Jan 23, 2020 at 12:01:55PM +0900, Punit Agrawal wrote:

> There is a typo in $SUBJECT and the commit log. The code itself appears
> to be fine.

You're right, fixed locally thanks.
James Morse Feb. 10, 2020, 5:17 p.m. UTC | #3
Hi Mark,

On 23/01/2020 21:54, Mark Brown wrote:
> On Thu, Jan 23, 2020 at 12:01:55PM +0900, Punit Agrawal wrote:
>> There is a typo in $SUBJECT and the commit log. The code itself appears
>> to be fine.
> 
> You're right, fixed locally thanks.

Acked-by: James Morse <james.Morse@arm.com>


Thanks,

James
diff mbox series

Patch

diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
index 5d47687592ec..65d126228046 100644
--- a/arch/arm64/kernel/entry.S
+++ b/arch/arm64/kernel/entry.S
@@ -938,7 +938,7 @@  NOKPROBE(ret_from_fork)
  */
 .ltorg
 .pushsection ".entry.tramp.text", "ax"
-ENTRY(__sdei_asm_entry_trampoline)
+SYM_CODE_START(__sdei_asm_entry_trampoline)
 	mrs	x4, ttbr1_el1
 	tbz	x4, #USER_ASID_BIT, 1f
 
@@ -960,7 +960,7 @@  ENTRY(__sdei_asm_entry_trampoline)
 	ldr	x4, =__sdei_asm_handler
 #endif
 	br	x4
-ENDPROC(__sdei_asm_entry_trampoline)
+SYM_CODE_END(__sdei_asm_entry_trampoline)
 NOKPROBE(__sdei_asm_entry_trampoline)
 
 /*
@@ -970,14 +970,14 @@  NOKPROBE(__sdei_asm_entry_trampoline)
  * x2: exit_mode
  * x4: struct sdei_registered_event argument from registration time.
  */
-ENTRY(__sdei_asm_exit_trampoline)
+SYM_CODE_START(__sdei_asm_exit_trampoline)
 	ldr	x4, [x4, #(SDEI_EVENT_INTREGS + S_ORIG_ADDR_LIMIT)]
 	cbnz	x4, 1f
 
 	tramp_unmap_kernel	tmp=x4
 
 1:	sdei_handler_exit exit_mode=x2
-ENDPROC(__sdei_asm_exit_trampoline)
+SYM_CODE_END(__sdei_asm_exit_trampoline)
 NOKPROBE(__sdei_asm_exit_trampoline)
 	.ltorg
 .popsection		// .entry.tramp.text
@@ -1002,7 +1002,7 @@  __sdei_asm_trampoline_next_handler:
  * follow SMC-CC. We save (or retrieve) all the registers as the handler may
  * want them.
  */
-ENTRY(__sdei_asm_handler)
+SYM_CODE_START(__sdei_asm_handler)
 	stp     x2, x3, [x1, #SDEI_EVENT_INTREGS + S_PC]
 	stp     x4, x5, [x1, #SDEI_EVENT_INTREGS + 16 * 2]
 	stp     x6, x7, [x1, #SDEI_EVENT_INTREGS + 16 * 3]
@@ -1085,6 +1085,6 @@  alternative_else_nop_endif
 	tramp_alias	dst=x5, sym=__sdei_asm_exit_trampoline
 	br	x5
 #endif
-ENDPROC(__sdei_asm_handler)
+SYM_CODE_END(__sdei_asm_handler)
 NOKPROBE(__sdei_asm_handler)
 #endif /* CONFIG_ARM_SDE_INTERFACE */