[Bug 289405] systematic LD segmentation fault
- In reply to: bugzilla-noreply_a_freebsd.org: "[Bug 289405] systematic LD segmentation fault"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 12 Sep 2025 17:35:30 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289405
--- Comment #8 from keivan@motavalli.me ---
So, I cleaned the source tree and compiled without the .if block about
MALLOC_PRODUCTION in jemalloc
(/usr/src/lib/libc/stdlib/malloc/jemalloc/Makefile.inc) and without
MALLOC_PRODUCTION in /usr/src/share/mk/src.opts.mk.
For the scope of the build, /usr/bin/ld was a softlink to a ports provided llvm
linker.
The build succeeds, but make installworld has strip crashing around a jemalloc
bug:
install -s -o root -g wheel -m 444 -C -S libprivateclang.so.19 /usr/lib/
<jemalloc>: jemalloc_rtree.c:146: Failed assertion: "!dependent || leaf !=
NULL"
PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the
crash backtrace.
Stack dump:
0. Program arguments: strip -o /usr/lib/INS@2MCuXi libprivateclang.so.19
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH
or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0 libprivatellvm.so.19 0x00003d5a542b60b9
llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 57
1 libprivatellvm.so.19 0x00003d5a542b3f75 llvm::sys::RunSignalHandlers() + 85
2 libprivatellvm.so.19 0x00003d5a542b67c7
llvm::support::detail::provider_format_adapter<int>::format(llvm::raw_ostream&,
llvm::StringRef) + 375
3 libthr.so.3 0x00003d5a57da02dc _pthread_sigmask + 1276
4 libthr.so.3 0x00003d5a57d9f8eb pthread_signals_unblock_np + 1467
5 [vdso] 0x00003d5a4ed6c2d3 __vdso_sigcode + 3
6 libsys.so.7 0x00003d5a5a5d6b4a _thr_kill + 10
7 libc.so.7 0x00003d5a5944d174 raise + 52
8 libc.so.7 0x00003d5a594ff6e9 abort + 73
9 libc.so.7 0x00003d5a59551129 _pthread_mutex_init_calloc_cb +
10505
10 libc.so.7 0x00003d5a59515e02 xallocx + 2178
11 libc.so.7 0x00003d5a59513a60 calloc + 1888
.PATH: ${LIBC_SRCTOP}/stdlib/malloc/jemalloc
now that I rebuilt everything after the make clean, also cc crashes:
(gdb) run
Starting program: /usr/bin/cc
Program received signal SIGSEGV, Segmentation fault.
Address not mapped to object.
LookupBucketFor () at
/usr/src/contrib/llvm-project/llvm/lib/Support/StringMap.cpp:92
92 if (NumBuckets == 0)
(gdb) info locals
No locals.
(gdb) bt
#0 LookupBucketFor () at
/usr/src/contrib/llvm-project/llvm/lib/Support/StringMap.cpp:92
#1 0x000000080945ce33 in try_emplace_with_hash<llvm::cl::Option*> () at
/usr/src/contrib/llvm-project/llvm/include/llvm/ADT/StringMap.h:376
#2 0x000000080945cf8c in insert () at
/usr/src/contrib/llvm-project/llvm/include/llvm/ADT/StringMap.h:329
#3 addOption () at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:216
#4 0x000000080944e200 in operator() () at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:249
#5 callback_fn<(lambda at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:249:27)> () at
/usr/src/contrib/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:45
#6 operator() () at
/usr/src/contrib/llvm-project/llvm/include/llvm/ADT/STLFunctionalExtras.h:68
#7 forEachSubCommand () at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:189
#8 addOption () at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:249
#9 addArgument () at
/usr/src/contrib/llvm-project/llvm/lib/Support/CommandLine.cpp:416
#10 0x0000000803856075 in ?? () at
/usr/src/contrib/llvm-project/llvm/include/llvm/Support/CommandLine.h:1477 from
/usr/lib/libprivateclang.so.19
#11 0x000000080104d73d in objlist_call_init (list=list@entry=0x7fffffffea90,
lockstate=lockstate@entry=0x7fffffffe870) at
/usr/src/libexec/rtld-elf/rtld.c:3282
#12 0x000000080104bba6 in _rtld (sp=<optimized out>, exit_proc=0x7fffffffeb00,
objp=0x7fffffffeb08) at /usr/src/libexec/rtld-elf/rtld.c:1031
#13 0x0000000801048ec9 in rtld_start () at
/usr/src/libexec/rtld-elf/amd64/rtld_start.S:40
--
You are receiving this mail because:
You are the assignee for the bug.