2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 18:07:57 +00:00

vdso: correct data types for ELF hash table sizes

Let's change the data types of `nbucket` and `nchain` to uint32.

This should fix the following compile-time error on arm32:
/criu/criu/pie/util-vdso.c:336: undefined reference to `__aeabi_uldivmod'

Signed-off-by: Andrei Vagin <avagin@google.com>
This commit is contained in:
Andrei Vagin 2025-03-12 23:46:05 +00:00 committed by Andrei Vagin
parent ce6bb4fd9e
commit 12bb0de6f9

View File

@ -302,7 +302,7 @@ static bool elf_symbol_match(uintptr_t mem, size_t size,
static unsigned long elf_symbol_lookup(uintptr_t mem, size_t size, static unsigned long elf_symbol_lookup(uintptr_t mem, size_t size,
const char *symbol, uint32_t symbol_hash, unsigned int sym_off, const char *symbol, uint32_t symbol_hash, unsigned int sym_off,
uintptr_t dynsymbol_names, Dyn_t *dyn_symtab, Phdr_t *load, uintptr_t dynsymbol_names, Dyn_t *dyn_symtab, Phdr_t *load,
uint64_t nbucket, uint64_t nchain, void *_bucket, Hash_t *chain, uint32_t nbucket, uint32_t nchain, void *_bucket, Hash_t *chain,
const size_t vdso_symbol_length, bool use_gnu_hash) const size_t vdso_symbol_length, bool use_gnu_hash)
{ {
unsigned int j; unsigned int j;
@ -360,7 +360,7 @@ static int parse_elf_symbols(uintptr_t mem, size_t size, Phdr_t *load,
void *bucket = NULL; void *bucket = NULL;
Hash_t *chain = NULL; Hash_t *chain = NULL;
uint64_t nbucket, nchain = 0; uint32_t nbucket, nchain = 0;
unsigned int sym_off = 0; unsigned int sym_off = 0;
unsigned int i = 0; unsigned int i = 0;