On Sun, Jun 14, 2026 at 02:12:25PM -0700, Gabriel wrote:
> Issue: Kernel does not compile if the in-kernel debugger (DDB) is disabled
> in a custom kernel.
> 
> Steps to recreate: Install the 7.9 sys release source code.
> Edit /usr/src/sys/conf/GENERIC and comment out the first option (DDB)
> Configure and compile as normal - will fail with the following error when
> attempting to link:
> 
> root@defender /usr/sys/arch/octeon/compile/EDGE.MP> make
> ld -e start -T ld.script -Ttext=0xffffffff81000000 --warn-common -nopie -o
> bsd $                                          {SYSTEM_HEAD} vers.o ${OBJS}
> ld: Dwarf Error: found dwarf version '0', this reader only handles version 2
> information.
> dt_dev.o: In function `dt_pcb_ring_get':
> dt_dev.c:(.text+0x2924): undefined reference to `stacktrace_save_at'
> dt_dev.c:(.text+0x2924): relocation truncated to fit: R_MIPS_26 against
> `stacktrace_save_at'
> dt_dev.c:(.text+0x293c): undefined reference to `stacktrace_save_utrace'
> dt_dev.c:(.text+0x293c): relocation truncated to fit: R_MIPS_26 against
> `stacktrace_save_utrace'
> *** Error 1 in /usr/sys/arch/octeon/compile/EDGE.MP (Makefile:507 'bsd':
> @echo ld  -e start -T ld.script -Ttext=0xffffffff81000000 --warn-co...)
> root@defender /usr/sys/arch/octeon/compile/EDGE.MP>

On mips64, the kernel stack unwinder depends on DDB.

You can get around the linking error by disabling dt(4).

Reply via email to