arm64: kvm: Modernize __smccc_workaround_1_smc_start annotations
authorMark Brown <broonie@kernel.org>
Tue, 18 Feb 2020 19:58:39 +0000 (19:58 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Mon, 9 Mar 2020 17:35:43 +0000 (17:35 +0000)
commit4db61fef16a104f94bde24fe163064b98cee6b7c
treeceed464120ef2bf90a00910c21aadb6be5f40c75
parent6e52aab9015277c39c6f03a76a7e9487370013f8
arm64: kvm: Modernize __smccc_workaround_1_smc_start annotations

In an effort to clarify and simplify the annotation of assembly functions
in the kernel new macros have been introduced. These replace ENTRY and
ENDPROC with separate annotations for standard C callable functions,
data and code with different calling conventions.

Using these for __smccc_workaround_1_smc is more involved than for most
symbols as this symbol is annotated quite unusually, rather than just have
the explicit symbol we define _start and _end symbols which we then use to
compute the length. This does not play at all nicely with the new style
macros. Instead define a constant for the size of the function and use that
in both the C code and for .org based size checks in the assembly code.

Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Marc Zyngier <maz@kernel.org>
arch/arm64/include/asm/kvm_asm.h
arch/arm64/kernel/cpu_errata.c
arch/arm64/kvm/hyp/hyp-entry.S