platform_bionic/libc/private
Mitch Phillips 7c1f3770af Use DYNAMIC entries for MTE enablement
Adds support for the dynamic entries to specify MTE enablement. This is
now the preferred way for dynamically linked executables to specify to
the loader what mode MTE should be in, and whether stack MTE should be
enabled. In future, this is also needed for MTE globals support.

Leave the existing ELF note parsing as a backup option because dynamic
entries are not supported for fully static executables, and there's
still a bunch of glue sitting around in the build system and tests that
explicitly include the note. When -fsanitize=memtag* is specified, lld
will create the note implicitly (along with the new dynamic entries),
but at some point once we've cleaned up all the old references to the
note, we can remove the notegen from lld.

Bug: N/A
Test: atest bionic-unit-tests CtsBionicTestCases --test-filter=*Memtag*
Test: Build/boot the device under _fullmte.

Change-Id: I954b7e78afa5ff4274a3948b968cfad8eba94d88
2023-10-17 13:49:24 +02:00
..
__bionic_get_shell_path.h Fix internal uses of _PATH_BSHELL. 2019-03-25 17:28:22 -07:00
bionic_allocator.h Add a thread-properties API 2020-08-11 16:51:43 +00:00
bionic_arc4random.h Replace TLS_SLOT_BIONIC_PREINIT w/ shared globals 2018-12-04 13:51:56 -08:00
bionic_asm.h Add the L() macro for local labels to <private/bionic_asm.h>. 2023-08-04 15:12:30 -07:00
bionic_asm_arm.h Unified sysroot: kill arch-specific include dirs. 2017-10-12 13:19:51 -07:00
bionic_asm_arm64.h Basic support for MTE stack tagging. 2022-05-26 16:18:53 -07:00
bionic_asm_dwarf_exprs.h x86/x86_64: cleanup signal trampolines 2020-09-25 15:58:42 -07:00
bionic_asm_note.h [NFCI] Change Android's NT_TYPE to NT_ANDROID_TYPE. 2022-02-07 13:49:20 -08:00
bionic_asm_offsets.h riscv64: use vdso for __riscv_hwprobe(). 2023-07-31 12:24:31 -07:00
bionic_asm_riscv64.h riscv64: don't go via the PLT for setjmp. 2022-10-26 19:53:35 +00:00
bionic_asm_x86.h Unified sysroot: kill arch-specific include dirs. 2017-10-12 13:19:51 -07:00
bionic_asm_x86_64.h Unified sysroot: kill arch-specific include dirs. 2017-10-12 13:19:51 -07:00
bionic_auxv.h Changes for #inclusivefixit. 2020-07-21 16:34:58 -07:00
bionic_call_ifunc_resolver.h Adopt GNU calling convention for ifunc resolvers. 2019-10-28 20:20:29 -07:00
bionic_config.h Use a separate config.h for config like defines. 2014-06-16 23:35:53 -07:00
bionic_constants.h Fix shadowstack init crash on 16K page system 2023-07-10 16:04:01 -07:00
bionic_defs.h Make __clone_for_fork pure native bridge mode abstraction 2020-09-28 20:36:39 +02:00
bionic_elf_tls.h riscv64 TLS support. 2022-10-10 20:30:24 +00:00
bionic_fdsan.h libc_shared_globals: add a constexpr ctor 2019-01-03 17:11:27 -08:00
bionic_fdtrack.h Disable fdtrack post-fork. 2021-04-07 19:00:45 -07:00
bionic_fortify.h fortify: remove static 2020-06-09 16:03:42 -07:00
bionic_futex.h Modernize codebase by replacing NULL with nullptr 2018-08-02 18:09:44 -07:00
bionic_globals.h Use DYNAMIC entries for MTE enablement 2023-10-17 13:49:24 +02:00
bionic_ieee.h Fix instances of '#if __LP64__'. 2016-09-15 14:21:28 -07:00
bionic_ifuncs.h Disable HWASAN on ifunc resolvers. 2020-08-13 13:01:44 -07:00
bionic_inline_raise.h riscv64: inline raise. 2023-08-02 16:04:25 -07:00
bionic_lock.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
bionic_malloc_dispatch.h Rename iterate to malloc_iterate internally. 2019-11-08 11:49:14 -08:00
bionic_mbstate.h Fix mismatched return types for surrogate pairs. 2023-08-04 19:48:35 +00:00
bionic_sigdefs.h Move <sys/_sigdefs.h> and <sys/_errdefs.h> to private. 2016-04-13 17:45:39 -07:00
bionic_ssp.h Clean up mips references in the headers. 2020-02-13 18:00:16 -08:00
bionic_systrace.h Revert "Adding system property tracing" 2021-07-21 09:15:41 +08:00
bionic_time_conversions.h Always use CLOCK_MONOTONIC for pthreads and semaphores 2017-08-18 09:11:05 -07:00
bionic_tls.h Fix recursive deadlock inside bionic_systrace 2022-01-25 20:50:12 +00:00
bionic_vdso.h riscv64: use vdso for __riscv_hwprobe(). 2023-07-31 12:24:31 -07:00
bsd_sys_param.h Export fts as a static library for use with musl 2021-09-08 15:53:10 -07:00
CachedProperty.h Address a bunch of clang-tidy complaints. 2018-01-19 15:56:12 -08:00
CFIShadow.h bionic: CFIShadow: Remove use of PAGE_SIZE macro. 2023-08-23 13:59:57 -07:00
ErrnoRestorer.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
FdPath.h Add POSIX fexecve. 2017-10-18 16:26:17 -07:00
get_cpu_count_from_string.h Fix the way to count online cpus. 2015-09-29 17:49:37 -07:00
grp_pwd.h Require vendor users and groups to start with vendor_ 2018-05-15 14:10:21 -07:00
icu.h Implement <iconv.h>. 2017-08-25 08:47:41 -07:00
KernelArgumentBlock.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
linker_native_bridge.h Reorganize static TLS memory for ELF TLS 2019-01-11 15:34:22 -08:00
MallocXmlElem.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
NetdClientDispatch.h libnetd_client: support hooking sendto/sendmsg/sendmmsg too. 2019-06-20 08:32:24 -07:00
ScopedFd.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
ScopedPthreadMutexLocker.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
ScopedReaddir.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
ScopedRWLock.h Move bionic_macros.h from private to platform. 2020-01-02 14:09:50 -08:00
ScopedSignalBlocker.h Block all signals in ScopedSignalBlocker. 2020-04-23 15:57:58 -07:00
ScopedSignalHandler.h Fix/suppress bionic google-explicit-constructor warnings 2019-01-02 11:04:05 -08:00
SigSetConverter.h De-pessimize SigSetConverter usage. 2023-07-19 12:20:07 -07:00
thread_private.h Remove unused _ARC4_ATFORK() macro. 2023-07-18 22:44:40 +00:00
WriteProtected.h bionic: libc: WriteProtected use max_page_size() 2023-08-19 00:05:12 +00:00