[Bug 259799] devel/rust-cbindgen: armv6: build using "make" fails, using "cargo build --release -j 1" works

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 27 Nov 2021 14:31:37 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259799

--- Comment #41 from Mark Millard <marklmi26-fbsd@yahoo.com> ---
(In reply to Mark Millard from comment #36)

I finally got a no-strip (but no debug information) environment
set up where I can look at the main [so: 14] based build failure
via a backtrace. This is still an optimiazed build so there could
be oddities in the backtrace but it should be useful:.

It looks like:

rustc_errors::Handler::delay_good_path_bug () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so

initiated the backtrace that is later problematical.

gdb reports:

Core was generated by `/usr/local/bin/rustc --crate-name tempfile
--edition=2018 /wrkdirs/usr/ports/dev'.
Program terminated with signal SIGSEGV, Segmentation fault.
Address not mapped to object.
#0  _Unwind_VRS_Pop (context=0xbfff5b80, regclass=_UVRSC_CORE,
discriminator=18432, representation=_UVRSD_UINT32) at
/usr/main-src/contrib/llvm-project/libunwind/src/Unwind-EHABI.cpp:915
915             uint32_t value = *sp++;
[Current thread is 1 (LWP 710038)]
(gdb) bt
#0  _Unwind_VRS_Pop (context=0xbfff5b80, regclass=_UVRSC_CORE,
discriminator=18432, representation=_UVRSD_UINT32) at
/usr/main-src/contrib/llvm-project/libunwind/src/Unwind-EHABI.cpp:915
#1  _Unwind_VRS_Interpret (context=0xbfff5b80, data=<optimized out>, offset=4,
len=4) at /usr/main-src/contrib/llvm-project/libunwind/src/Unwind-EHABI.cpp:281
#2  0x400c83e0 in libunwind::UnwindCursor<libunwind::LocalAddressSpace,
libunwind::Registers_arm>::stepWithEHABI (this=0xbfff5b80)
    at /usr/main-src/contrib/llvm-project/libunwind/src/UnwindCursor.hpp:921
#3  libunwind::UnwindCursor<libunwind::LocalAddressSpace,
libunwind::Registers_arm>::step (this=0xbfff5b80) at
/usr/main-src/contrib/llvm-project/libunwind/src/UnwindCursor.hpp:2094
#4  0x400c7134 in (anonymous namespace)::unwindOneFrame (state=<optimized out>,
ucbp=0xbfff59d8, context=0xbfff5b80) at
/usr/main-src/contrib/llvm-project/libunwind/src/Unwind-EHABI.cpp:190
#5  0x400c7708 in _Unwind_Backtrace (callback=0x47346bc0
<std::backtrace_rs::backtrace::libunwind::trace::trace_fn>, ref=0xbfff5d58)
    at
/usr/main-src/contrib/llvm-project/libunwind/src/UnwindLevel1-gcc-ext.c:156
#6  0x47311b58 in std::backtrace::Backtrace::create () from
/usr/local/lib/libstd-21f5f79d0bba7291.so
#7  0x47311ac8 in std::backtrace::Backtrace::force_capture () from
/usr/local/lib/libstd-21f5f79d0bba7291.so
#8  0x46c61f28 in rustc_errors::Handler::delay_good_path_bug () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#9  0x46a33998 in
rustc_middle::ty::print::pretty::trimmed_def_paths::h696a2e73b4fe3316 () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#10 0x4591ef34 in
rustc_query_system::query::plumbing::get_query_impl::h97f9a3ac217b06d6 () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#11 0x45d45a2c in <rustc_query_impl::Queries as
rustc_middle::ty::query::QueryEngine>::trimmed_def_paths () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#12 0x46a1acec in <rustc_middle::ty::print::pretty::FmtPrinter<F> as
rustc_middle::ty::print::Printer>::print_def_path () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#13 0x4695cef8 in rustc_middle::ty::print::pretty::<impl
rustc_middle::ty::context::TyCtxt>::def_path_str_with_substs () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#14 0x4695cd68 in rustc_middle::ty::print::pretty::<impl
rustc_middle::ty::context::TyCtxt>::def_path_str () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#15 0x465fc36c in
core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hbd67d6eb15125f94
() from /usr/local/lib/librustc_driver-a196dfc434d07325.so
#16 0x4692fd68 in rustc_middle::lint::struct_lint_level::struct_lint_level_impl
() from /usr/local/lib/librustc_driver-a196dfc434d07325.so
#17 0x466039c8 in <rustc_lint::unused::UnusedResults as
rustc_lint::passes::LateLintPass>::check_stmt () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#18 0x4659a8d8 in <rustc_lint::late::LateContextAndPass<T> as
rustc_hir::intravisit::Visitor>::visit_stmt () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#19 0x465b5920 in rustc_hir::intravisit::walk_expr () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#20 0x4659a380 in <rustc_lint::late::LateContextAndPass<T> as
rustc_hir::intravisit::Visitor>::visit_nested_body () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#21 0x4659ac04 in <rustc_lint::late::LateContextAndPass<T> as
rustc_hir::intravisit::Visitor>::visit_fn () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#22 0x465aaff0 in rustc_hir::intravisit::walk_impl_item () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#23 0x46598a98 in rustc_hir::intravisit::Visitor::visit_nested_impl_item ()
from /usr/local/lib/librustc_driver-a196dfc434d07325.so
#24 0x465b7f8c in rustc_hir::intravisit::walk_item () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#25 0x46597d8c in rustc_hir::intravisit::Visitor::visit_nested_item () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#26 0x4659c298 in rustc_lint::late::late_lint_mod () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#27 0x45961444 in
rustc_query_system::query::plumbing::get_query_impl::he2b46ba21cb31bb4 () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#28 0x45d3ed78 in <rustc_query_impl::Queries as
rustc_middle::ty::query::QueryEngine>::lint_mod () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#29 0x421a844c in rustc_data_structures::sync::join () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#30 0x42178e7c in <core::panic::unwind_safe::AssertUnwindSafe<F> as
core::ops::function::FnOnce<()>>::call_once () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#31 0x421a7224 in rustc_session::utils::<impl
rustc_session::session::Session>::time () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#32 0x420fe6c8 in rustc_interface::passes::analysis () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#33 0x458bb1c4 in
rustc_query_system::query::plumbing::get_query_impl::h01ade962adc0e126 () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#34 0x45d3b254 in <rustc_query_impl::Queries as
rustc_middle::ty::query::QueryEngine>::analysis () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#35 0x420368e8 in rustc_interface::passes::QueryContext::enter () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#36 0x4201397c in rustc_interface::queries::<impl
rustc_interface::interface::Compiler>::enter () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#37 0x41fd1540 in rustc_span::with_source_map () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#38 0x42011e48 in scoped_tls::ScopedKey<T>::set () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#39 0x41fdbca0 in
std::sys_common::backtrace::__rust_begin_short_backtrace::hdc54cbe6eb1f58a5 ()
from /usr/local/lib/librustc_driver-a196dfc434d07325.so
#40 0x41fccce8 in core::ops::function::FnOnce::call_once{{vtable.shim}} () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#41 0x4730bfb4 in std::sys::unix::thread::Thread::new::thread_start () from
/usr/local/lib/libstd-21f5f79d0bba7291.so
#42 0x401371ac in thread_start (curthread=0x40073a00) at
/usr/main-src/lib/libthr/thread/thr_create.c:292
#43 0x40136cdc in _pthread_create (thread=0xffffb0b8, attr=<optimized out>,
start_routine=<optimized out>, arg=<optimized out>) at
/usr/main-src/lib/libthr/thread/thr_create.c:187
#44 0x40139a4c in _thr_umutex_unlock2 (mtx=0x0, id=11, defer=0x0) at
/usr/main-src/lib/libthr/thread/thr_umtx.h:160
#45 _thr_umutex_unlock (mtx=0x0, id=11) at
/usr/main-src/lib/libthr/thread/thr_umtx.h:183Backtrace stopped: Cannot access
memory at address 0x4
(gdb) info threads
  Id   Target Id         Frame 
* 1    LWP 710038        _Unwind_VRS_Pop (context=0xbfff5b80,
regclass=_UVRSC_CORE, discriminator=18432, representation=_UVRSD_UINT32)
    at /usr/main-src/contrib/llvm-project/libunwind/src/Unwind-EHABI.cpp:915
  2    LWP 296951        _umtx_op () at _umtx_op.S:4
(gdb) thread 2
[Switching to thread 2 (LWP 296951)]
#0  _umtx_op () at _umtx_op.S:4
4       _umtx_op.S: No such file or directory.
(gdb) bt
#0  _umtx_op () at _umtx_op.S:4
#1  0x40147d64 in _umtx_op_err (obj=0x4, op=2, val=1, uaddr=0x0,
uaddr2=<optimized out>) at /usr/main-src/lib/libthr/thread/thr_umtx.c:39
#2  _thr_umtx_wait (mtx=0x4, id=1, timeout=<optimized out>) at
/usr/main-src/lib/libthr/thread/thr_umtx.c:201
#3  0x40139868 in join_common (pthread=0x40073a00, thread_return=0x0,
abstime=0x0, peek=<optimized out>) at
/usr/main-src/lib/libthr/thread/thr_join.c:147
#4  0x4730c190 in std::sys::unix::thread::Thread::join () from
/usr/local/lib/libstd-21f5f79d0bba7291.so
#5  0x41fcc3d8 in std::thread::JoinHandle<T>::join () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#6  0x420141c4 in rustc_interface::interface::run_compiler () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#7  0x41fc3e0c in rustc_driver::RunCompiler::run () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#8  0x41fda1c4 in <core::panic::unwind_safe::AssertUnwindSafe<F> as
core::ops::function::FnOnce<()>>::call_once () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#9  0x41fca500 in rustc_driver::main () from
/usr/local/lib/librustc_driver-a196dfc434d07325.so
#10 0x00022928 in rustc_main::main ()
#11 0x00022970 in std::sys_common::backtrace::__rust_begin_short_backtrace ()
#12 0x00022980 in
std::rt::lang_start::_$u7b$$u7b$closure$u7d$$u7d$::hf3c8c073b90c923c ()
#13 0x47326924 in std::rt::lang_start_internal () from
/usr/local/lib/libstd-21f5f79d0bba7291.so
#14 0x00022958 in main ()

-- 
You are receiving this mail because:
You are on the CC list for the bug.