mbox series

[v4,0/9] xen/arm: arm64: Annotate code symbols

Message ID 20240504115514.1063509-1-edgar.iglesias@gmail.com (mailing list archive)
Headers show
Series xen/arm: arm64: Annotate code symbols | expand

Message

Edgar E. Iglesias May 4, 2024, 11:55 a.m. UTC
From: "Edgar E. Iglesias" <edgar.iglesias@amd.com>

On the way towards Xen safety certification we're evaluating the use
of tools to collect code-coverage/profiling information from execution
traces. Some tools rely on ELF symbols for code being declared with
type FUNC and having a symbol size.

We currently annotate some symbols but not all. Also, there seems to be
different ways to do the annotation.

This series now converts all the .S files under xen/arm/arm64 to use
the macros from xen/linkage.h and also adds missing code symbol
annotations for global symbols. There are still some local labels that
are left unmodified.

Best regards,
Edgar

ChangeLog:

v3 -> v4:
* Add newline between FUNC_LOCAL and PRINT_ID.
* Use LABEL instead of GLOBAL in bpi.S.
* Changed .global -> LABEL in entry.S (dropped Stefanos RB tag).

v2 -> v3:
* Convert and add annotations for all of xen/arm/arm64.
* Fix commit message for entry.S.

v1 -> v2:
* Drop RFC.
* Squash into a single patch to avoid confusion.


Edgar E. Iglesias (9):
  xen/arm64: entry: Add missing code symbol annotations
  xen/arm64: smc: Add missing code symbol annotations
  xen/arm64: sve: Add missing code symbol annotations
  xen/arm64: head: Add missing code symbol annotations
  xen/arm64: debug: Add missing code symbol annotations
  xen/arm64: bpi: Add missing code symbol annotations
  xen/arm64: mmu/head: Add missing code symbol annotations
  xen/arm64: cache: Use the generic xen/linkage.h macros
  xen/arm64: lib: Use the generic xen/linkage.h macros

 xen/arch/arm/arm64/bpi.S         | 20 ++++----
 xen/arch/arm/arm64/cache.S       |  4 +-
 xen/arch/arm/arm64/debug.S       |  6 ++-
 xen/arch/arm/arm64/entry.S       | 78 ++++++++++++++++++++------------
 xen/arch/arm/arm64/head.S        | 51 +++++++++++----------
 xen/arch/arm/arm64/lib/memchr.S  |  4 +-
 xen/arch/arm/arm64/lib/memcmp.S  |  4 +-
 xen/arch/arm/arm64/lib/memcpy.S  |  4 +-
 xen/arch/arm/arm64/lib/memmove.S |  4 +-
 xen/arch/arm/arm64/lib/memset.S  |  4 +-
 xen/arch/arm/arm64/lib/strchr.S  |  4 +-
 xen/arch/arm/arm64/lib/strcmp.S  |  4 +-
 xen/arch/arm/arm64/lib/strlen.S  |  4 +-
 xen/arch/arm/arm64/lib/strncmp.S |  4 +-
 xen/arch/arm/arm64/lib/strnlen.S |  4 +-
 xen/arch/arm/arm64/lib/strrchr.S |  4 +-
 xen/arch/arm/arm64/mmu/head.S    | 29 ++++++------
 xen/arch/arm/arm64/smc.S         |  6 ++-
 xen/arch/arm/arm64/sve-asm.S     |  9 ++--
 19 files changed, 142 insertions(+), 105 deletions(-)

Comments

Julien Grall May 16, 2024, 9:08 p.m. UTC | #1
Hi Edgar,

On 04/05/2024 12:55, Edgar E. Iglesias wrote:
> Edgar E. Iglesias (9):
>    xen/arm64: entry: Add missing code symbol annotations
>    xen/arm64: smc: Add missing code symbol annotations
>    xen/arm64: sve: Add missing code symbol annotations
>    xen/arm64: head: Add missing code symbol annotations
>    xen/arm64: debug: Add missing code symbol annotations
>    xen/arm64: bpi: Add missing code symbol annotations
>    xen/arm64: mmu/head: Add missing code symbol annotations
>    xen/arm64: cache: Use the generic xen/linkage.h macros
>    xen/arm64: lib: Use the generic xen/linkage.h macros

The series is now committed. Thanks for the clean-up!

Cheers,