linux/tools/include/linux
Achill Gilgenast a95743b530 kallsyms: fix build without execinfo
Some libc's like musl libc don't provide execinfo.h since it's not part of
POSIX.  In order to fix compilation on musl, only include execinfo.h if
available (HAVE_BACKTRACE_SUPPORT)

This was discovered with c104c16073 ("Kunit to check the longest symbol
length") which starts to include linux/kallsyms.h with Alpine Linux'
configs.

Link: https://lkml.kernel.org/r/20250622014608.448718-1-fossdd@pwned.life
Fixes: c104c16073 ("Kunit to check the longest symbol length")
Signed-off-by: Achill Gilgenast <fossdd@pwned.life>
Cc: Luis Henriques <luis@igalia.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-07-09 21:07:51 -07:00
..
sched XArray: Add calls to might_alloc() 2022-07-10 21:17:30 -04:00
unaligned License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
align.h tools: move alignment-related macros to new <linux/align.h> 2024-04-01 10:49:28 +01:00
arm-smccc.h tools: Import ARM SMCCC definitions 2022-05-03 21:30:19 +01:00
atomic.h tools/include: Update atomic definitions 2022-02-20 08:44:37 +02:00
bitfield.h tools: Copy bitfield.h from the kernel sources 2022-11-10 19:10:27 +00:00
bitmap.h lib/interval_tree: add test case for interval_tree_iter_xxx() helpers 2025-03-17 12:17:00 -07:00
bitops.h asm-generic cleanups for 6.10 2024-05-20 15:18:34 -07:00
bits.h tools headers: Synchronize linux/bits.h with the kernel sources 2025-06-17 16:55:24 -03:00
btf_ids.h tools/resolve_btfids: fix build with musl libc 2024-03-28 18:58:29 -07:00
bug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
build_bug.h tools headers: Syncronize linux/build_bug.h with the kernel sources 2025-06-16 14:05:11 -03:00
cache.h tools/include: Add cache.h stub 2022-02-20 08:44:37 +02:00
cfi_types.h tools headers: Update the arch/x86/lib/memset_64.S copy with the kernel sources 2025-04-10 09:28:25 -07:00
compiler-gcc.h Improve consistency of '#error' directive messages 2024-11-11 17:17:04 -08:00
compiler.h tools headers: Syncronize linux/build_bug.h with the kernel sources 2025-06-16 14:05:11 -03:00
compiler_types.h work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
const.h compiler.h: move __is_constexpr() to compiler.h 2023-10-18 14:43:22 -07:00
container_of.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
coresight-pmu.h perf: cs-etm: Support version 0.1 of HW_ID packets 2024-08-29 15:56:13 -03:00
ctype.h tools headers: Update linux/ctype.h with the kernel sources 2020-12-18 17:32:28 -03:00
debugfs.h tools/include: Add debugfs.h stub 2022-02-20 08:44:37 +02:00
delay.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
err.h docs: move x86 documentation into Documentation/arch/ 2023-03-30 12:58:51 -06:00
export.h module: remove EXPORT_UNUSED_SYMBOL* 2021-02-08 12:28:07 +01:00
filter.h bpftool: Probe for ISA v4 instruction set extension 2024-12-12 17:25:17 +01:00
find.h tools: sync find_bit() implementation 2022-09-21 12:21:44 -07:00
ftrace.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
gfp.h tools: fix compilation after gfp_types.h split 2022-09-11 16:22:31 -07:00
gfp_types.h tools: fix compilation after gfp_types.h split 2022-09-11 16:22:31 -07:00
hash.h hash.h: remove unused define directive 2022-01-20 08:52:54 +02:00
hashtable.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
init.h memblock test: add the definition of __setup() 2024-08-06 08:21:25 +03:00
interrupt.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
interval_tree_generic.h objtool: Fix find_{symbol,func}_containing() 2022-10-17 16:41:08 +02:00
io.h tools/include: Add io.h stub 2022-02-20 08:44:37 +02:00
jhash.h tools/: replace HTTP links with HTTPS ones 2020-08-07 11:33:21 -07:00
kallsyms.h kallsyms: fix build without execinfo 2025-07-09 21:07:51 -07:00
kasan-tags.h tools: arm64: Update sysreg.h header files 2025-01-12 12:50:11 +00:00
kconfig.h tools headers: Remove broken definition of __LITTLE_ENDIAN 2021-07-14 14:39:36 -03:00
kern_levels.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kernel.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
linkage.h more s390 updates for 6.12 merge window 2024-09-28 09:11:46 -07:00
list.h tools lib: Add list_last_entry_or_null() 2022-07-26 16:02:13 -03:00
list_sort.h tools lib: Adopt list_sort() from the kernel sources 2021-10-20 10:30:59 -03:00
log2.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
math.h tools: Fix math.h breakage 2021-11-30 09:14:42 -08:00
math64.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
mm.h memblock test: fix implicit declaration of function 'virt_to_phys' 2024-08-06 08:20:03 +03:00
module.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
moduleparam.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
mutex.h tools/lib/lockdep: Remove private kernel headers 2017-06-05 09:28:14 +02:00
nmi.h tools/lib/lockdep: Add empty nmi.h 2018-09-10 13:48:23 +02:00
numa.h memblock tests: fix implicit declaration of function 'numa_valid_node' 2024-07-05 11:24:47 +03:00
objtool_types.h objtool: Convert {.UN}REACHABLE to ANNOTATE 2024-12-02 12:01:44 +01:00
overflow.h compiler.h: drop fallback overflow checkers 2021-09-13 10:18:28 -07:00
panic.h memblock tests: fix undefined reference to `panic' 2024-04-04 11:08:33 +03:00
pfn.h mm/memblock: introduce a new helper memblock_estimated_nr_free_pages() 2024-08-11 19:18:52 +03:00
poison.h slab: delete useless RED_INACTIVE and RED_ACTIVE 2024-06-24 21:41:41 +02:00
prandom.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
rbtree.h rbtree: Add generic add and find helpers 2021-02-17 14:07:31 +01:00
rbtree_augmented.h tools lib rbtree: pick some improvements from the kernel rbtree code 2024-05-08 08:41:27 -07:00
rcu.h rcu: Don't return a value from rcu_assign_pointer() 2019-06-13 15:38:34 -07:00
refcount.h mm: make vma cache SLAB_TYPESAFE_BY_RCU 2025-03-16 22:06:21 -07:00
ring_buffer.h tools: Optimize ring buffer for riscv 2024-09-20 01:46:47 -07:00
rwsem.h maple_tree: update check_forking() and bench_forking() 2023-12-10 16:51:33 -08:00
seq_file.h memblock tests: fix warning ‘struct seq_file’ declared inside parameter list 2023-09-14 10:51:28 +03:00
sizes.h tools: bpftool: add "prog run" subcommand to test-run programs 2019-07-05 23:48:07 +02:00
slab.h lib/rbtree: enable userland test suite for rbtree related data structure 2025-03-17 12:17:00 -07:00
spinlock.h maple_tree: introduce {mtree,mas}_lock_nested() 2023-12-10 16:51:31 -08:00
static_call_types.h static_call: Move struct static_call_key definition to static_call_types.h 2021-03-11 16:04:39 +01:00
string.h memblock: updates for 6.12-rc1 2024-09-25 11:35:19 -07:00
stringify.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
time64.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
types.h lib/rbtree: add random seed 2025-03-17 12:17:00 -07:00
unaligned.h tools headers: Update the linux/unaligned.h copy with the kernel sources 2024-10-28 12:34:28 -03:00
zalloc.h tools lib: Adopt zalloc()/zfree() from tools/perf 2019-07-09 10:13:26 -03:00