[PATCH 0/2] aarch64: Re-apply malloc ifuncs

Yury Khrustalev yury.khrustalev@arm.com
Tue Jul 28 16:12:13 GMT 2026


This patch series re-applies commit 9ed3576e61f7a87eb83d512531566f5e5d6bb032
with some minor changes:

1) Split into two commits. Refactor declarations for malloc
   functions. Not functional change, just adding a new header
   and moving some code from malloc/malloc.c to it. Second
   commit actually adds malloc ifuncs.
2) Allow quick disabling of malloc ifuncs on aarch64 by changing
   the value of the USE_MULTIARCH_MALLOC macro from 1 to 0 in the
   sysdeps/aarch64/multiarch/malloc-ifuncs.h file.

Tested on aarch64-linux-gnu, x86_64-linux-gnu, i686-linux-gnu and
build-tested for several targets with build-many-glibcs.py.

OK for trunk?

Two known issues of other tools that are triggered by malloc becoming
an ifunc:

1) GDB: https://sourceware.org/bugzilla/show_bug.cgi?id=34367
2) Valgrind: https://bugs.kde.org/show_bug.cgi?id=522497

Base commit: 37a64a1618

---

Yury Khrustalev (2):
  malloc: Refactor malloc API into a separate header
  malloc: aarch64: Add ifuncs for malloc functions

 malloc/malloc-internal.h                  |   2 +
 malloc/malloc.c                           | 159 +++-----------------
 sysdeps/aarch64/multiarch/Makefile        |   6 +
 sysdeps/aarch64/multiarch/malloc-ifuncs.c |  82 +++++++++++
 sysdeps/aarch64/multiarch/malloc-ifuncs.h |  25 ++++
 sysdeps/generic/malloc-api.h              | 172 ++++++++++++++++++++++
 sysdeps/generic/malloc-ifuncs.h           |  36 +++++
 7 files changed, 346 insertions(+), 136 deletions(-)
 create mode 100644 sysdeps/aarch64/multiarch/malloc-ifuncs.c
 create mode 100644 sysdeps/aarch64/multiarch/malloc-ifuncs.h
 create mode 100644 sysdeps/generic/malloc-api.h
 create mode 100644 sysdeps/generic/malloc-ifuncs.h

-- 
2.47.3



More information about the Libc-alpha mailing list