Re: Still seeing Failed assertion: "p[i] == 0" [ *** i386 chroot on amd64 can get the failure on main 16 too *** ] [failed without new kernel check detection]
Mark Millard <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm,gmane.os.freebsd.current |
|---|---|
| Message-ID | <[email protected]> |
On Nov 21, 2025, at 10:29, Mark Millard <[email protected]> wrote: > I patched the vintage of /usr/src/ on amd64 that is for > the pkgbase vintage that I've been using on the test > machines. > > # sysctl debug.vm_check_pg_zero=1 > debug.vm_check_pg_zero: 0 -> 1 > > # env WITH_META_MODE= make -j10 buildworld > --- buildworld --- > . . . > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGBuiltin.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/PatternInit.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/SanitizerMetadata.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/SwiftCallingConv.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/TargetInfo.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/AArch64.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/AMDGPU.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/ARC.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/ARM.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/AVR.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/BPF.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/CSKY.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/Hexagon.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/Lanai.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/LoongArch.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/M68k.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/MSP430.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/Mips.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/NVPTX.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/PNaCl.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/PPC.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/RISCV.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/SPIR.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/Sparc.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/SystemZ.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/TCE.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/VE.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/WebAssembly.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/X86.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/Targets/XCore.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/VarBypassDetector.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CrossTU/CrossTranslationUnit.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Action.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Compilation.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Distro.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Driver.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/DriverOptions.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Job.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Multilib.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/MultilibBuilder.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/OptionUtils.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Phases.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/SanitizerArgs.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/Tool.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChain.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/AIX.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/AMDGPU.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/AMDGPUOpenMP.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/AVR.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/AArch64.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/ARM.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/CSKY.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/LoongArch.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/M68k.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/Mips.pico > <jemalloc>: /usr/src/contrib/jemalloc/include/jemalloc/internal/ehooks.h:170: Failed assertion: "p[i] == 0" > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/PPC.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/RISCV.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/Driver/ToolChains/Arch/Sparc.pico > Abort trap (core dumped) > *** [CodeGen/CGBuiltin.pico] Error code 134 > > > > I had also previously tested without enabling debug.vm_check_pg_zero > just to check if failures were still happening. It turns out that > for my current context that failed building the same .pico file: > > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGBuiltin.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGHLSLRuntime.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGLoopInfo.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGNonTrivialStruct.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGObjC.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGObjCGNU.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGObjCMac.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGObjCRuntime.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGOpenCLRuntime.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGOpenMPRuntime.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGOpenMPRuntimeGPU.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGPointerAuth.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGRecordLayoutBuilder.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGStmt.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGStmtOpenMP.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGVTT.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CGVTables.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenAction.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenFunction.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenModule.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenPGO.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenTBAA.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CodeGenTypes.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/ConstantInitBuilder.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/CoverageMappingGen.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/ItaniumCXXABI.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/LinkInModulesPass.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/MacroPPCallbacks.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/MicrosoftCXXABI.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/ModuleBuilder.pico > Building /usr/obj/usr/src/i386.i386/lib/clang/libclang/CodeGen/ObjectFilePCHContainerOperations.pico > <jemalloc>: /usr/src/contrib/jemalloc/include/jemalloc/internal/ehooks.h:170: Failed assertion: "p[i] == 0" > Abort trap (core dumped) > *** [CodeGen/CGBuiltin.pico] Error code 134 > > It turns out that frames #0..#31 have bt text that match. So just in case that much of a sometimes common context might help in some way: (lldb) bt * thread #1, name = 'c++', stop reason = signal SIGABRT * frame #0: 0x24bd378b libsys.so.7`__sys_thr_kill at thr_kill.S:4 frame #1: 0x2ab2231b libc.so.7`__raise(s=6) at raise.c:48:10 frame #2: 0x2abcc73b libc.so.7`abort at abort.c:61:8 frame #3: 0x2ac10440 libc.so.7`ehooks_debug_zero_check(addr=<unavailable>, size=<unavailable>) at ehooks.h:0 frame #4: 0x2ac0ccfa libc.so.7`__je_extent_alloc_wrapper [inlined] ehooks_alloc(tsdn=<unavailable>, ehooks=<unavailable>, new_addr=<unavailable>, size=<unavailable>, alignment=<unavailable>, zero=0xffff9977, commit=<unavailable>) at ehooks.h:208:3 frame #5: 0x2ac0cc5a libc.so.7`__je_extent_alloc_wrapper(tsdn=0x2adf90a0, pac=0x2b0015e4, ehooks=0x2b000080, new_addr=0x00000000, size=28672, alignment=4096, zero=true, commit=0xffff99df, growing_retained=<unavailable>) at jemalloc_extent.c:1003:15 frame #6: 0x2ac0c58e libc.so.7`__je_ecache_alloc_grow(tsdn=0x2adf90a0, pac=0x2b0015e4, ehooks=0x2b000080, ecache=0x2b0036d0, expand_edata=0x00000000, size=28672, alignment=4096, zero=<unavailable>, guarded=<unavailable>) at jemalloc_extent.c:126:11 frame #7: 0x2ac3c73f libc.so.7`pac_alloc_impl [inlined] pac_alloc_real(tsdn=<unavailable>, pac=<unavailable>, ehooks=<unavailable>, size=<unavailable>, alignment=4096, zero=<unavailable>, guarded=<unavailable>) at jemalloc_pac.c:124:11 frame #8: 0x2ac3c696 libc.so.7`pac_alloc_impl(tsdn=0x2adf90a0, self=0x2b0015e4, size=28672, alignment=4096, zero=<unavailable>, guarded=<unavailable>, frequent_reuse=<unavailable>, deferred_work_generated=<unavailable>) at jemalloc_pac.c:178:11 frame #9: 0x2ac3afe0 libc.so.7`__je_pa_alloc [inlined] pai_alloc(tsdn=<unavailable>, self=<unavailable>, size=<unavailable>, alignment=<unavailable>, zero=<unavailable>, guarded=<unavailable>, frequent_reuse=<unavailable>, deferred_work_generated=<unavailable>) at pai.h:43:9 frame #10: 0x2ac3afc9 libc.so.7`__je_pa_alloc(tsdn=0x2adf90a0, shard=0x2b0015d8, size=28672, alignment=4096, slab=<unavailable>, szind=19, zero=<unavailable>, guarded=<unavailable>, deferred_work_generated=0xffff9ac3) at jemalloc_pa.c:139:11 frame #11: 0x2abec82b libc.so.7`arena_slab_alloc(tsdn=<unavailable>, arena=<unavailable>, binind=19, binshard=0, bin_info=0x2ac71538) at jemalloc_arena.c:839:18 frame #12: 0x2abebdaa libc.so.7`__je_arena_cache_bin_fill_small(tsdn=0x2adf90a0, arena=0x2b000500, cache_bin=0x2adf9470, cache_bin_info=0x2b0004a6, binind=19, nfill=32) at jemalloc_arena.c:1034:16 frame #13: 0x2ac2b737 libc.so.7`__je_tcache_alloc_small_hard(tsdn=0x2adf90a0, arena=0x2b000500, tcache=0x2adf92f0, cache_bin=0x2adf9470, binind=19, tcache_success=0xffff9b87) at jemalloc_tcache.c:238:2 frame #14: 0x2abe1d81 libc.so.7`iallocztm [inlined] tcache_alloc_small(tsd=<unavailable>, arena=0x2b000500, tcache=<unavailable>, size=<unavailable>, binind=<unavailable>, zero=<unavailable>, slow_path=<unavailable>) at tcache_inlines.h:68:9 frame #15: 0x2abe1cd7 libc.so.7`iallocztm [inlined] arena_malloc(tsdn=<unavailable>, arena=<unavailable>, size=<unavailable>, ind=<unavailable>, zero=<unavailable>, tcache=<unavailable>, slow_path=<unavailable>) at arena_inlines_b.h:151:11 frame #16: 0x2abe1c52 libc.so.7`iallocztm(tsdn=<unavailable>, size=<unavailable>, ind=19, zero=<unavailable>, tcache=0x2adf92f0, is_internal=<unavailable>, arena=0x00000000, slow_path=<unavailable>) at jemalloc_internal_inlines_c.h:55:8 frame #17: 0x2abe7179 libc.so.7`imalloc_body [inlined] imalloc_no_sample(sopts=0xffff9c3c, dopts=0xffff9c1c, tsd=0x2adf90a0, size=864, usize=896, ind=19) at jemalloc_jemalloc.c:2402:9 frame #18: 0x2abe7106 libc.so.7`imalloc_body(sopts=<unavailable>, dopts=<unavailable>, tsd=0x2adf90a0) at jemalloc_jemalloc.c:2577:16 frame #19: 0x2abdae88 libc.so.7`imalloc(sopts=<unavailable>, dopts=<unavailable>) at tsd.h:0:2 frame #20: 0x2abdaddc libc.so.7`__je_malloc_default(size=864) at jemalloc_jemalloc.c:2726:2 frame #21: 0x2abdb27f libc.so.7`__malloc [inlined] imalloc_fastpath(size=864, fallback_alloc=<unavailable>) at jemalloc_internal_inlines_c.h:0:2 frame #22: 0x2abdb149 libc.so.7`__malloc(size=864) at jemalloc_jemalloc.c:2750:9 frame #23: 0x28aa2cce libprivatellvm.so.19`::grow_pod() [inlined] safe_malloc at MemAlloc.h:26:18 frame #24: 0x28aa2cc8 libprivatellvm.so.19`::grow_pod() at SmallVector.cpp:143:15 frame #25: 0x22004f24 libprivateclang.so.19`::resize() [inlined] grow_pod at SmallVector.h:152:11 frame #26: 0x22004f14 libprivateclang.so.19`::resize() [inlined] grow at SmallVector.h:539:41 frame #27: 0x22004f14 libprivateclang.so.19`::resize() [inlined] reserveForParamAndGetAddressImpl<llvm::SmallVectorTemplateBase<unsigned int, true> > at SmallVector.h:257:11 frame #28: 0x22004f14 libprivateclang.so.19`::resize() [inlined] reserveForParamAndGetAddress at SmallVector.h:551:9 frame #29: 0x22004f14 libprivateclang.so.19`::resize() [inlined] append at SmallVector.h:707:29 frame #30: 0x22004f14 libprivateclang.so.19`::resize() at SmallVector.h:674:11 frame #31: 0x22004de0 libprivateclang.so.19`::resize() at BitVector.h:344:10 . . . === Mark Millard marklmi at yahoo.com