diff options
author | Xiaoming Jiang <jiangxiaoming@outlook.com> | 2023-03-08 06:49:19 +0000 |
---|---|---|
committer | Damjan Marion <dmarion@0xa5.net> | 2023-05-16 09:30:12 +0000 |
commit | 5b55526da489def814a239a3ae6599fcb30dbb6e (patch) | |
tree | 2ba829119d73291cc081b1c3ae5b3ddc7b0e6f64 /src/vppinfra | |
parent | e10c5242067b6ad6a9de73ad3b00bfd215202f64 (diff) |
dpdk: fix format rx/tx burst function name failed
Type: fix
Signed-off-by: Xiaoming Jiang <jiangxiaoming@outlook.com>
Change-Id: I9971e69135e0652a36e4b4754774a43ea1d92e8b
Diffstat (limited to 'src/vppinfra')
-rw-r--r-- | src/vppinfra/elf_clib.c | 25 | ||||
-rw-r--r-- | src/vppinfra/elf_clib.h | 2 |
2 files changed, 21 insertions, 6 deletions
diff --git a/src/vppinfra/elf_clib.c b/src/vppinfra/elf_clib.c index d2865f800e3..d4d511e0fba 100644 --- a/src/vppinfra/elf_clib.c +++ b/src/vppinfra/elf_clib.c @@ -319,20 +319,33 @@ symbol_by_address_or_name (char *by_name, return 0; } -uword -clib_elf_symbol_by_name (char *by_name, clib_elf_symbol_t * s) +__clib_export uword +clib_elf_symbol_by_name (char *by_name, clib_elf_symbol_t *s) { return symbol_by_address_or_name (by_name, /* by_address */ 0, s); } -uword -clib_elf_symbol_by_address (uword by_address, clib_elf_symbol_t * s) +__clib_export uword +clib_elf_symbol_by_address (uword by_address, clib_elf_symbol_t *s) { return symbol_by_address_or_name ( /* by_name */ 0, by_address, s); } -u8 * -format_clib_elf_symbol (u8 * s, va_list * args) +__clib_export const char * +clib_elf_symbol_name (clib_elf_symbol_t *s) +{ + clib_elf_main_t *cem = &clib_elf_main; + elf_main_t *em; + elf_symbol_table_t *t; + + em = vec_elt_at_index (cem->elf_mains, s->elf_main_index); + t = vec_elt_at_index (em->symbol_tables, s->symbol_table_index); + + return (const char *) elf_symbol_name (t, &s->symbol); +} + +__clib_export u8 * +format_clib_elf_symbol (u8 *s, va_list *args) { clib_elf_main_t *cem = &clib_elf_main; clib_elf_symbol_t *sym = va_arg (*args, clib_elf_symbol_t *); diff --git a/src/vppinfra/elf_clib.h b/src/vppinfra/elf_clib.h index 25b928c22a5..4e5d4d72165 100644 --- a/src/vppinfra/elf_clib.h +++ b/src/vppinfra/elf_clib.h @@ -131,6 +131,8 @@ typedef struct uword clib_elf_symbol_by_name (char *name, clib_elf_symbol_t * result); uword clib_elf_symbol_by_address (uword address, clib_elf_symbol_t * result); +const char *clib_elf_symbol_name (clib_elf_symbol_t *result); + format_function_t format_clib_elf_symbol, format_clib_elf_symbol_with_address; #endif /* included_clib_elf_self_h */ |