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 |
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 */
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.
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 --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 */
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(-)