Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Mar 2021 15:39:42 -0800
From:      Mark Millard <marklmi@yahoo.com>
To:        freebsd-arm <freebsd-arm@freebsd.org>, freebsd-current <freebsd-current@freebsd.org>
Subject:   FYI: main (bad9fa56620e based): some unexpected SIGSEGV's using poudriere-devel to build armv7 ports on aarch64 (cortex-a72) system
Message-ID:  <8B54D020-A3E2-4441-B6A0-894831E7E1EC@yahoo.com>
References:  <8B54D020-A3E2-4441-B6A0-894831E7E1EC.ref@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
After using poudriere to build ports for native cortex-a72
on the MACCHIATObin Double Shot (and similarly for
cortex-a57 on the OverDrive 1000) I attempted to do my
usual bulk build targeting cortex-a7 via poudriere-devel:

# poudriere jail -i -jFBSDFSSDjailArmV7
Jail name:         FBSDFSSDjailArmV7
Jail version:      14.0-CURRENT
Jail arch:         arm.armv7
Jail method:       null
Jail mount:        /usr/obj/DESTDIRs/clang-armv7-installworld-poud
Jail fs:          =20
Jail updated:      2021-01-27 14:47:10
Jail pkgbase:      disabled

But I got some SIGSEGV failures that I've never before
had analogous failures. I'll show the 6 backtraces.
They all have a similar type-of-context but in various
programs, summarized as (from the lldb bt outputs):

gmake`new_job(file=3D<unavailable>) [3 examples]
and:
sh`waitcmdloop(job=3D0x00064230) [2 examples]
and:
cmake`(anonymous namespace)::RunCommand(command=3D<unavailable>, =
output=3D"14.0-CURRENT\n", retVal=3D<unavailable>, dir=3D<unavailable>, =
verbose=3D<unavailable>, encoding=3DAuto)

(Only 83 ports built of 208 built, 5 failed, and 120 were
skipped.)

I have not yet tried simply running poudriere again to see
how reliable the specific failures may or may not be: I'm
first collecting and reporting this information. Nor have
I tried doing the build on the cortex-a57 context instead.



I'll note that when I looked at detail as the assembler level
it appeared that there was a frame not shown between #0 and #1
in lldb's output: Frame #1 "->" was indicating the instruction
after a simple bl to a not-shown subroutine.

For building textproc/libxslt :
(jobserver_acquire not shown between #0 and #1)

(lldb) bt
* thread #1, name =3D 'gmake', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x0003b5f8 gmake`new_job(file=3D<unavailable>) at =
job.c:1870:21
    frame #2: 0x0002db80 gmake`execute_file_commands(file=3D<unavailable>)=
 at commands.c:476:3 [artificial]
    frame #3: 0x00049acc gmake`update_file [inlined] =
remake_file(file=3D0x400a9700) at remake.c:1234:11
    frame #4: 0x00049a84 gmake`update_file [inlined] =
update_file_1(file=3D<unavailable>, depth=3D6) at remake.c:835
    frame #5: 0x000494ec gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #6: 0x0004b08c gmake`check_dep(file=3D0x400a9700, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc4ac) at =
remake.c:1024:20
    frame #7: 0x00049074 gmake`update_file at remake.c:572:17
    frame #8: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #9: 0x0004b08c gmake`check_dep(file=3D0x400a9400, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc564) at =
remake.c:1024:20
    frame #10: 0x00049074 gmake`update_file at remake.c:572:17
    frame #11: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #12: 0x0004b08c gmake`check_dep(file=3D0x400a8f20, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc61c) at =
remake.c:1024:20
    frame #13: 0x00049074 gmake`update_file at remake.c:572:17
    frame #14: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #15: 0x000487e0 =
gmake`update_goal_chain(goaldeps=3D<unavailable>) at remake.c:151:22
    frame #16: 0x0003f25c gmake`main(argc=3D2, argv=3D0xffffd470, =
envp=3D0xffffffff) at main.c:2589:13
    frame #17: 0x0002c0fc gmake`__start(argc=3D2, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x400c4004, =
cleanup=3D0x40091aa0) at crt1_c.c:92:7

-> 1870	        got_token =3D jobserver_acquire (waiting_jobs !=3D =
NULL);

    0x3b5f4 <+1288>: bl     0x50078                   ; =
jobserver_acquire at posixos.c:265
->  0x3b5f8 <+1292>: cmp    r0, #1


For building x11-toolkits/libXaw :
(jobserver_acquire not shown between #0 and #1)

(lldb) bt
* thread #1, name =3D 'gmake', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x0003b5f8 gmake`new_job(file=3D<unavailable>) at =
job.c:1870:21
    frame #2: 0x0002db80 gmake`execute_file_commands(file=3D<unavailable>)=
 at commands.c:476:3 [artificial]
    frame #3: 0x00049acc gmake`update_file [inlined] =
remake_file(file=3D0x4036a580) at remake.c:1234:11
    frame #4: 0x00049a84 gmake`update_file [inlined] =
update_file_1(file=3D<unavailable>, depth=3D6) at remake.c:835
    frame #5: 0x000494ec gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #6: 0x0004b08c gmake`check_dep(file=3D0x4036a580, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc31c) at =
remake.c:1024:20
    frame #7: 0x00049074 gmake`update_file at remake.c:572:17
    frame #8: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #9: 0x0004b08c gmake`check_dep(file=3D0x4036a220, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc3d4) at =
remake.c:1024:20
    frame #10: 0x00049074 gmake`update_file at remake.c:572:17
    frame #11: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #12: 0x0004b08c gmake`check_dep(file=3D0x40369ec0, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffffc48c) at =
remake.c:1024:20
    frame #13: 0x00049074 gmake`update_file at remake.c:572:17
    frame #14: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #15: 0x000487e0 =
gmake`update_goal_chain(goaldeps=3D<unavailable>) at remake.c:151:22
    frame #16: 0x0003f25c gmake`main(argc=3D2, argv=3D0xffffd500, =
envp=3D0xffffffff) at main.c:2589:13
    frame #17: 0x0002c0fc gmake`__start(argc=3D2, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x400c4004, =
cleanup=3D0x40091aa0) at crt1_c.c:92:7

-> 1870	        got_token =3D jobserver_acquire (waiting_jobs !=3D =
NULL);

    0x3b5f4 <+1288>: bl     0x50078                   ; =
jobserver_acquire at posixos.c:265
->  0x3b5f8 <+1292>: cmp    r0, #1


For building textproc/itstool :
(dowait not shown between #0 and #1)

(lldb) bt
* thread #1, name =3D 'sh', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x00031aa8 sh`waitcmdloop(job=3D0x00064230) at =
jobs.c:608:11
    frame #2: 0x00031a24 sh`waitcmd(argc=3D<unavailable>, =
argv=3D<unavailable>) at jobs.c:554:13
    frame #3: 0x00028f54 sh`evalcommand(cmd=3D0x400ad0e4, =
flags=3D<unavailable>, backcmd=3D0x00000000) at eval.c:1107:16
    frame #4: 0x00027800 sh`evaltree(n=3D0x400ad0e4, =
flags=3D<unavailable>) at eval.c:289:4
    frame #5: 0x000344d0 sh`cmdloop(top=3D1) at main.c:221:4
    frame #6: 0x000342f4 sh`main(argc=3D<unavailable>, =
argv=3D<unavailable>) at main.c:168:3
    frame #7: 0x0002480c sh`__start(argc=3D8, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x400b4004, =
cleanup=3D0x40081aa0) at crt1_c.c:92:7

-> 608 		} while (dowait(DOWAIT_BLOCK | DOWAIT_SIG, (struct job =
*)NULL) !=3D -1);

    0x31aa4 <+80>:  bl     0x32bcc                   ; dowait at =
jobs.c:1142
->  0x31aa8 <+84>:  cmn    r0, #1


For building devel/cmake :
(cmsysProcess_WaitForData not shown between #0 and #1)
(Note: the failing cmake is Bootstrap.cmk/cmake .)

(lldb) bt
* thread #1, name =3D 'cmake', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x000fd124 cmake`(anonymous =
namespace)::RunCommand(command=3D<unavailable>, output=3D"14.0-CURRENT\n",=
 retVal=3D<unavailable>, dir=3D<unavailable>, verbose=3D<unavailable>, =
encoding=3DAuto) at cmExecProgramCommand.cxx:223:15
    frame #2: 0x000fca24 cmake`cmExecProgramCommand(args=3D<unavailable>, =
status=3D<unavailable>) at cmExecProgramCommand.cxx:95:14
    frame #3: 0x002a0ca0 =
cmake`InvokeBuiltinCommand(command=3D(cmake`cmExecProgramCommand(std::__1:=
:vector<std::__1::basic_string<char, std::__1::char_traits<char>, =
std::__1::allocator<char> >, =
std::__1::allocator<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, =
cmExecutionStatus&) at cmExecProgramCommand.cxx:26), args=3D<unavailable>,=
 status=3D0xffffb9a8)(std::__1::vector<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> >, =
std::__1::allocator<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, =
cmExecutionStatus&), std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) at =
cmState.cxx:430:10
    frame #4: 0x00248988 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
std::__1::__function::__value_func<bool =
(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, =
cmExecutionStatus&)>::operator(this=3D<unavailable>, =
__args=3D<unavailable>, =
__args=3D<unavailable>)(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) =
const at functional:1884:16
    frame #5: 0x00248980 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
std::__1::function<bool (std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, =
cmExecutionStatus&)>::operator(this=3D<unavailable>, =
__arg=3D<unavailable>, =
__arg=3D<unavailable>)(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) =
const at functional:2556
    frame #6: 0x00248980 =
cmake`cmMakefile::ExecuteCommand(this=3D0x4086a000, lff=3D0x408798b0, =
status=3D<unavailable>, deferId=3D<unavailable>) at cmMakefile.cxx:462
    frame #7: 0x001eabac =
cmake`cmIfFunctionBlocker::Replay(this=3D0x403d2800, =
functions=3D<unavailable>, inStatus=3D0xffffbd10) at =
cmIfCommand.cxx:149:10
    frame #8: 0x00157d50 =
cmake`cmFunctionBlocker::IsFunctionBlocked(this=3D0x403d2800, =
lff=3D<unavailable>, status=3D<unavailable>) at =
cmFunctionBlocker.cxx:42:20
    frame #9: 0x002484a4 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
cmMakefile::IsFunctionBlocked(this=3D0x4086a000, lff=3D<unavailable>, =
status=3D<unavailable>) at cmMakefile.cxx:3426:40
    frame #10: 0x00248484 =
cmake`cmMakefile::ExecuteCommand(this=3D0x4086a000, lff=3D0x40868440, =
status=3D<unavailable>, deferId=3Doptional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > @ 0xffffbc78) =
at cmMakefile.cxx:421
    frame #11: 0x001eabac =
cmake`cmIfFunctionBlocker::Replay(this=3D0x403d2760, =
functions=3D<unavailable>, inStatus=3D0xffffc078) at =
cmIfCommand.cxx:149:10
    frame #12: 0x00157d50 =
cmake`cmFunctionBlocker::IsFunctionBlocked(this=3D0x403d2760, =
lff=3D<unavailable>, status=3D<unavailable>) at =
cmFunctionBlocker.cxx:42:20
    frame #13: 0x002484a4 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
cmMakefile::IsFunctionBlocked(this=3D0x4086a000, lff=3D<unavailable>, =
status=3D<unavailable>) at cmMakefile.cxx:3426:40
    frame #14: 0x00248484 =
cmake`cmMakefile::ExecuteCommand(this=3D0x4086a000, lff=3D0x408683b8, =
status=3D<unavailable>, deferId=3Doptional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > @ 0xffffbfe0) =
at cmMakefile.cxx:421
    frame #15: 0x001eabac =
cmake`cmIfFunctionBlocker::Replay(this=3D0x403d2710, =
functions=3D<unavailable>, inStatus=3D0xffffc368) at =
cmIfCommand.cxx:149:10
    frame #16: 0x00157d50 =
cmake`cmFunctionBlocker::IsFunctionBlocked(this=3D0x403d2710, =
lff=3D<unavailable>, status=3D<unavailable>) at =
cmFunctionBlocker.cxx:42:20
    frame #17: 0x002484a4 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
cmMakefile::IsFunctionBlocked(this=3D0x4086a000, lff=3D<unavailable>, =
status=3D<unavailable>) at cmMakefile.cxx:3426:40
    frame #18: 0x00248484 =
cmake`cmMakefile::ExecuteCommand(this=3D0x4086a000, lff=3D0x40873208, =
status=3D<unavailable>, deferId=3Doptional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > @ 0xffffc358) =
at cmMakefile.cxx:421
    frame #19: 0x0024a628 =
cmake`cmMakefile::RunListFile(this=3D<unavailable>, listFile=3D0xffffc3f0,=
 =
filenametoread=3D"/wrkdirs/usr/ports/devel/cmake/work/cmake-3.19.6/Modules=
/CMakeDetermineSystem.cmake", defer=3D0x00000000) at =
cmMakefile.cxx:788:11
    frame #20: 0x0024af34 =
cmake`cmMakefile::ReadListFile(this=3D<unavailable>, =
filename=3D<unavailable>) at cmMakefile.cxx:737:9
    frame #21: 0x001ce448 =
cmake`cmGlobalGenerator::EnableLanguage(this=3D<unavailable>, =
languages=3D0xffffc63c, mf=3D0x4086a000, optional=3Dfalse) at =
cmGlobalGenerator.cxx:629:9
    frame #22: 0x00310bf4 =
cmake`cmGlobalUnixMakefileGenerator3::EnableLanguage(this=3D0x403cc900, =
languages=3D0xffffc63c, mf=3D0x4086a000, optional=3Dfalse) at =
cmGlobalUnixMakefileGenerator3.cxx:57:28
    frame #23: 0x0025d740 =
cmake`cmMakefile::EnableLanguage(this=3D0x4086a000, lang=3D<unavailable>, =
optional=3Dfalse) at cmMakefile.cxx:3748:33
    frame #24: 0x0027e198 cmake`cmProjectCommand(args=3D<unavailable>, =
status=3D<unavailable>) at cmProjectCommand.cxx:338:6
    frame #25: 0x002a0ca0 =
cmake`InvokeBuiltinCommand(command=3D(cmake`cmProjectCommand(std::__1::vec=
tor<std::__1::basic_string<char, std::__1::char_traits<char>, =
std::__1::allocator<char> >, =
std::__1::allocator<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, =
cmExecutionStatus&) at cmProjectCommand.cxx:30), args=3D<unavailable>, =
status=3D0xffffc9b8)(std::__1::vector<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> >, =
std::__1::allocator<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, =
cmExecutionStatus&), std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) at =
cmState.cxx:430:10
    frame #26: 0x00248988 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
std::__1::__function::__value_func<bool =
(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, =
cmExecutionStatus&)>::operator(this=3D<unavailable>, =
__args=3D<unavailable>, =
__args=3D<unavailable>)(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) =
const at functional:1884:16
    frame #27: 0x00248980 =
cmake`cmMakefile::ExecuteCommand(cmListFileFunction const&, =
cmExecutionStatus&, cm::optional<std::__1::basic_string<char, =
std::__1::char_traits<char>, std::__1::allocator<char> > >) [inlined] =
std::__1::function<bool (std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, =
cmExecutionStatus&)>::operator(this=3D<unavailable>, =
__arg=3D<unavailable>, =
__arg=3D<unavailable>)(std::__1::vector<cmListFileArgument, =
std::__1::allocator<cmListFileArgument> > const&, cmExecutionStatus&) =
const at functional:2556
    frame #28: 0x00248980 =
cmake`cmMakefile::ExecuteCommand(this=3D0x4086a000, lff=3D0x40884018, =
status=3D<unavailable>, deferId=3D<unavailable>) at cmMakefile.cxx:462
    frame #29: 0x0024a628 =
cmake`cmMakefile::RunListFile(this=3D<unavailable>, listFile=3D0xffffcae0,=
 =
filenametoread=3D"/wrkdirs/usr/ports/devel/cmake/work/cmake-3.19.6/CMakeLi=
sts.txt", defer=3D0x4087b010) at cmMakefile.cxx:788:11
    frame #30: 0x00254948 cmake`cmMakefile::Configure(this=3D0x4086a000) =
at cmMakefile.cxx:1768:9
    frame #31: 0x001d2e9c =
cmake`cmGlobalGenerator::Configure(this=3D0x403cc900) at =
cmGlobalGenerator.cxx:1242:10
    frame #32: 0x0031123c =
cmake`cmGlobalUnixMakefileGenerator3::Configure(this=3D<unavailable>) at =
cmGlobalUnixMakefileGenerator3.cxx:132:28
    frame #33: 0x002f5ab0 cmake`cmake::ActualConfigure(this=3D0xffffd018) =
at cmake.cxx:1928:26
    frame #34: 0x002f493c cmake`cmake::Configure(this=3D0xffffd018) at =
cmake.cxx:1785:19
    frame #35: 0x002f6fec cmake`cmake::Run(this=3D0xffffd018, =
args=3D0xffffcfd8, noconfigure=3Dfalse) at cmake.cxx:2155:19
    frame #36: 0x002fdeec cmake`main [inlined] (anonymous =
namespace)::do_cmake(ac=3D<unavailable>, av=3D<unavailable>) at =
cmakemain.cxx:300:16
    frame #37: 0x002fde78 cmake`main(ac=3D<unavailable>, =
av=3D<unavailable>) at cmakemain.cxx:861
    frame #38: 0x0009b32c cmake`__start(argc=3D6, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x403ea004, =
cleanup=3D0x403b7aa0) at crt1_c.c:92:7

-> 223 	  while ((p =3D cmsysProcess_WaitForData(cp, &data, &length, =
nullptr))) {

    0xfd120 <+744>:  bl     0x3672f8                  ; =
cmsysProcess_WaitForData at ProcessUNIX.c:1064
->  0xfd124 <+748>:  cmp    r0, #0


For devel/gdb there are 2 cores: a gmake.core and a sh.core


For devel/gdb's gmake.core :
(jobserver_acquire not shown between #0 and #1)

(lldb) bt
* thread #1, name =3D 'gmake', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x0003b5f8 gmake`new_job(file=3D<unavailable>) at =
job.c:1870:21
    frame #2: 0x0002db80 gmake`execute_file_commands(file=3D<unavailable>)=
 at commands.c:476:3 [artificial]
    frame #3: 0x00049acc gmake`update_file [inlined] =
remake_file(file=3D0x4036cda0) at remake.c:1234:11
    frame #4: 0x00049a84 gmake`update_file [inlined] =
update_file_1(file=3D<unavailable>, depth=3D4) at remake.c:835
    frame #5: 0x000494ec gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #6: 0x0004b08c gmake`check_dep(file=3D0x4036cda0, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffff6aec) at =
remake.c:1024:20
    frame #7: 0x00049074 gmake`update_file at remake.c:572:17
    frame #8: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #9: 0x0004b08c gmake`check_dep(file=3D0x4036cc20, =
depth=3D<unavailable>, this_mtime=3D1, must_make_ptr=3D0xffff6ba4) at =
remake.c:1024:20
    frame #10: 0x00049074 gmake`update_file at remake.c:572:17
    frame #11: 0x00048b80 gmake`update_file(file=3D<unavailable>, =
depth=3D<unavailable>) at remake.c:336
    frame #12: 0x000487e0 =
gmake`update_goal_chain(goaldeps=3D<unavailable>) at remake.c:151:22
    frame #13: 0x0003f25c gmake`main(argc=3D130, argv=3D0xffffa36c, =
envp=3D0xffffffff) at main.c:2589:13
    frame #14: 0x0002c0fc gmake`__start(argc=3D130, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x400c4004, =
cleanup=3D0x40091aa0) at crt1_c.c:92:7

-> 1870	        got_token =3D jobserver_acquire (waiting_jobs !=3D =
NULL);

    0x3b5f4 <+1288>: bl     0x50078                   ; =
jobserver_acquire at posixos.c:265
->  0x3b5f8 <+1292>: cmp    r0, #1



For devel/gdb's sh.core :
(dowait not shown between #0 and #1)

(lldb) bt
* thread #1, name =3D 'sh', stop reason =3D signal SIGSEGV
  * frame #0: 0xffffe190
    frame #1: 0x00031aa8 sh`waitcmdloop(job=3D0x00064230) at =
jobs.c:608:11
    frame #2: 0x00031a24 sh`waitcmd(argc=3D<unavailable>, =
argv=3D<unavailable>) at jobs.c:554:13
    frame #3: 0x00028f54 sh`evalcommand(cmd=3D0x403fd0e4, =
flags=3D<unavailable>, backcmd=3D0x00000000) at eval.c:1107:16
    frame #4: 0x00027800 sh`evaltree(n=3D0x403fd0e4, =
flags=3D<unavailable>) at eval.c:289:4
    frame #5: 0x000344d0 sh`cmdloop(top=3D1) at main.c:221:4
    frame #6: 0x000342f4 sh`main(argc=3D<unavailable>, =
argv=3D<unavailable>) at main.c:168:3
    frame #7: 0x0002480c sh`__start(argc=3D26, argv=3D<unavailable>, =
env=3D<unavailable>, ps_strings=3D<unavailable>, obj=3D0x400b4004, =
cleanup=3D0x40081aa0) at crt1_c.c:92:7

-> 608 		} while (dowait(DOWAIT_BLOCK | DOWAIT_SIG, (struct job =
*)NULL) !=3D -1);

    0x31aa4 <+80>:  bl     0x32bcc                   ; dowait at =
jobs.c:1142
->  0x31aa8 <+84>:  cmn    r0, #1



It was basically the same list of ports that had built for
the cortex-a72 target context (208 armv7/cortex-a7 vs. 209
cortex-a72). I've no evidence of native aarch64 problems.

The cortex-a57 self built its 209 just fine and so far the
a57's cortex-a53 targeted build of the 209 has had no
problems (built 148 with 61 yet to finish).

So the problem seems to be specific armv7 activity on aarch64
systems, or possibly on cortex-a72 specifically.



For reference . . .

The chroot used to examine the expanded .tar content reports:

# ~/fbsd-based-on-what-freebsd-main.sh=20
merge-base: bad9fa56620eb82395c5ab66d300e91a0222dde2
merge-base: CommitDate: 2021-03-06 21:46:28 +0000
e48a1c379bfc (HEAD -> mm-src) mm-src snapshot for mm's patched build in =
git context.
bad9fa56620e (freebsd/main, freebsd/HEAD, pure-src, main) [PowerPC] Fix =
AP bringup on 32-bit AIM SMP
FreeBSD FBSDmacch 14.0-CURRENT FreeBSD 14.0-CURRENT =
mm-src-n245316-e48a1c379bfc GENERIC-NODBG  arm armv7 1400005 1400005

The host system reports:

# ~/fbsd-based-on-what-freebsd-main.sh=20
merge-base: bad9fa56620eb82395c5ab66d300e91a0222dde2
merge-base: CommitDate: 2021-03-06 21:46:28 +0000
e48a1c379bfc (HEAD -> mm-src) mm-src snapshot for mm's patched build in =
git context.
bad9fa56620e (freebsd/main, freebsd/HEAD, pure-src, main) [PowerPC] Fix =
AP bringup on 32-bit AIM SMP
FreeBSD FBSDmacch 14.0-CURRENT FreeBSD 14.0-CURRENT =
mm-src-n245316-e48a1c379bfc GENERIC-NODBG  arm64 aarch64 1400005 1400005

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8B54D020-A3E2-4441-B6A0-894831E7E1EC>