I have an old i386 kmk binary built on 6.1 $ file kBuild/bin/netbsd.amd64/kmk kBuild/bin/netbsd.amd64/kmk: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /usr/libexec/ld.elf_so, for NetBSD 6.1.5, with debug_info, not stripped
As you might have guessed from the pathname I'm using it on amd64, b/c I've been too lazy to build a native amd64 version. I've just upgraded an amd64 machine to a very current current and when I try to run that binary it segfaults with: $ gdb -q kBuild/bin/netbsd.amd64/kmk kmk.core Reading symbols from kBuild/bin/netbsd.amd64/kmk...done. [New process 1] warning: `/usr/libexec/ld.elf_so': Shared library architecture i386:x86-64 is not compatible with target architecture i386. warning: .dynamic section for "/usr/libexec/ld.elf_so" is not at the expected address (wrong library or version mismatch?) Core was generated by `kmk'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0xf618abc9 in je_tcache_bin_flush_large () from /usr/lib/i386/libc.so.12 (gdb) bt #0 0xf618abc9 in je_tcache_bin_flush_large () from /usr/lib/i386/libc.so.12 #1 0xf618b6f0 in je_tcache_event_hard () from /usr/lib/i386/libc.so.12 #2 0xf61f5712 in ?? () from /usr/lib/i386/libc.so.12 #3 0xf61f72d7 in je_arena_ralloc () from /usr/lib/i386/libc.so.12 #4 0xf6201f9f in realloc () from /usr/lib/i386/libc.so.12 #5 0x08073908 in xrealloc (ptr=0xf5910e00, size=<optimized out>) at kbuild/kbuild-trunk/src/kmk/misc.c:569 #6 0x08050e9d in readline (ebuf=0xfff4d42c) at kbuild/kbuild-trunk/src/kmk/read.c:3182 #7 0x08052cea in eval (ebuf=0xfff4d42c, set_default=1) at kbuild/kbuild-trunk/src/kmk/read.c:776 [...] (gdb) x/i $eip => 0xf618abc9 <je_tcache_bin_flush_large+4401>: paddq -0x138(%ebp),%xmm0 (gdb) p/x $ebp $1 = 0xfff4cf3c (gdb) p/x $xmm0 $2 = <unavailable> -uwe