Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Feb 2016 06:36:18 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 207364] devel/kyua: "kyua test -k /usr/tests/Kyuafile" got Bus Error on arm (rpi2) under FreeBSD projects/clang380-import -r295601
Message-ID:  <bug-207364-13@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D207364

            Bug ID: 207364
           Summary: devel/kyua: "kyua test -k /usr/tests/Kyuafile" got Bus
                    Error on arm (rpi2) under FreeBSD
                    projects/clang380-import -r295601
           Product: Ports & Packages
           Version: Latest
          Hardware: arm
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: jmmv@FreeBSD.org
          Reporter: markmi@dsl-only.net
          Assignee: jmmv@FreeBSD.org
             Flags: maintainer-feedback?(jmmv@FreeBSD.org)

[This is mostly a capture of the original E-mail sent to
kyua-discuss@googlegroups.com that was rejected as not deliverable to there=
.]

Context: armv7-a/cortex-a7 (on a RPI2B) with SCTLR bit[1]=3D=3D1 so requiri=
ng
strict alignment. "kyua test -k /usr/tests/Kyuafile" on a FreeBSD
projects/clang380-import -r295601 build.

usr.sbin/pw/pw_usernext:usernext_assigned_group  ->  passed  [5.317s]
usr.sbin/sa/legacy_test:main  ->  failed: 12 of 13 tests failed  [0.329s]
usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip  ->  failed: 1 checks fail=
ed;
see output for more details  [0.017s]
usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip6  ->  *** Fatal signal 10
received
*** Log file is /root/.kyua/logs/kyua.20160220-020456.log
*** Please report this problem to kyua-discuss@googlegroups.com detailing w=
hat
you were doing before the crash happened; if possible, include the log file
mentioned above
Bus error (core dumped)

The tail of the large log file looks like:

20160220-035605 I 69058 utils/cmdline/ui.cpp:103: stdout:
usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip  ->=20=20
20160220-035605 I 69058 engine/scheduler.cpp:1084: Spawning
/usr/tests/usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip
20160220-035605 I 69058 utils/process/executor.cpp:774: Spawned subprocess =
with
exec_handle 99534
20160220-035605 I 69058 utils/process/executor.cpp:630: Waited for subproce=
ss
with exec_handle 99534
20160220-035605 I 69058 utils/process/executor.cpp:368: Cleaning up exit_ha=
ndle
for exec_handle 99534
20160220-035605 I 69058 utils/cmdline/ui.cpp:103: stdout: failed: 1 checks
failed; see output for more details  [0.017s]
20160220-035605 I 69058 utils/cmdline/ui.cpp:103: stdout:
usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip6  ->=20=20
20160220-035605 I 69058 engine/scheduler.cpp:1084: Spawning
/usr/tests/usr.sbin/rpcbind/addrmerge_test:addrmerge_bindip6
20160220-035605 I 69058 utils/process/executor.cpp:774: Spawned subprocess =
with
exec_handle 99535
20160220-035605 I 69058 utils/process/executor.cpp:630: Waited for subproce=
ss
with exec_handle 99535
20160220-035605 W 69058 utils/process/executor.cpp:350: Implicitly cleaning=
 up
exit_handle for exec_handle 99535; ignoring errors!
20160220-035605 I 69058 utils/process/executor.cpp:368: Cleaning up exit_ha=
ndle
for exec_handle 99535

gdb of the core dump shows:

(gdb) print/x $pc
$2 =3D 0x1c000
(gdb) bt
#0  std::__1::__tree_next<std::__1::__tree_node_base<void*>*> (__x=3D0xbfbf=
d274)
at __tree:126
warning: (Internal error: pc 0x56c3f in read in psymtab, but not in symtab.)

#1  0x00056c40 in std::__1::__tree<std::__1::__value_type<int, long long>,
std::__1::__map_value_compare<int, std::__1::__value_type<int, long long>,
std::__1::less<int>, true>, std::__1::allocator<std::__1::__value_type<int,
long long> > >::erase () at __tree:647
warning: (Internal error: pc 0x56c40 in read in psymtab, but not in symtab.)

warning: (Internal error: pc 0x56c3f in read in psymtab, but not in symtab.)

#2  0x0005180c in drivers::run_tests::drive (kyuafile_path=3D@0xbfbfd8f0,
build_root=3D<value optimized out>, store_path=3D@0xbfbfd964, filters=3D@0x=
bfbfd8e0,
user_config=3D@0xbfbfddc4, hooks=3D@0xbfbfd908)
   at map:1232
warning: (Internal error: pc 0x409bb in read in psymtab, but not in symtab.)

#3  0x000409bc in cli::cmd_test::run () at cli/cmd_test.cpp:158
warning: (Internal error: pc 0x409bc in read in psymtab, but not in symtab.)

warning: (Internal error: pc 0x409bb in read in psymtab, but not in symtab.)

#4  0x0001ba40 in utils::cmdline::base_command<utils::config::tree>::main
(this=3D0x20a1b640, ui=3D0xbfbfe9cc, args=3D@0xbfbfdeb4, data=3D@0xbfbfddc4=
) at
base_command.ipp:96
#5  0x000127b0 in (anonymous namespace)::run_subcommand (ui=3D0xbfbfe9cc,
command=3D0x20a1b640, args=3D@0xbfbfdeb4, user_config=3D@0xbfbfddc4) at
cli/main.cpp:139
#6  0x00011a24 in (anonymous namespace)::safe_main (ui=3D0xbfbfe9cc, argc=
=3D4,
argv=3D0xbfbfed0c, mock_command=3D<value optimized out>) at cli/main.cpp:228
#7  0x0000f458 in cli::main (ui=3D0xbfbfe9cc, argc=3D4, argv=3D0xbfbfed0c,
mock_command=3D<value optimized out>) at cli/main.cpp:280
#8  0x00012104 in cli::main (argc=3D4, argv=3D0xbfbfed0c) at cli/main.cpp:3=
53
#9  0x0000ee84 in main (argc=3D4, argv=3D0xbfbfed0c) at main.cpp:49

(gdb) x/32i $pc-124
0x1bf84
<_ZNSt3__13mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEENS=
_3setIS6_NS_4lessIS6_EENS4_IS6_EEEES9_NS4_INS_4pairIKS6_SB_EEEEED2Ev+40>:
   pop     {r11, pc}
0x1bf88 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_>:    sub=
=20=20=20=20
sp, sp, #84     ; 0x54
0x1bf8c <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+4>:  mov=
=20=20=20=20
r1, r0
0x1bf90 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+8>:  str=
=20=20=20=20
r0, [sp, #24]
0x1bf94 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+12>: ldr=
=20=20=20=20
r0, [r0, #4]
0x1bf98 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+16>: add=
=20=20=20=20
r2, sp, #32     ; 0x20
0x1bf9c <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+20>: str=
=20=20=20=20
r2, [sp, #40]
0x1bfa0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+24>: mvn=
=20=20=20=20
r2, #0  ; 0x0
0x1bfa4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+28>: str=
=20=20=20=20
r2, [sp, #36]
0x1bfa8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+32>: ldr=
=20=20=20=20
r2, [sp, #40]
0x1bfac <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+36>: mov=
=20=20=20=20
r3, #0  ; 0x0
0x1bfb0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+40>: str=
=20=20=20=20
r3, [r2]
0x1bfb4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+44>: ldr=
=20=20=20=20
r2, [sp, #32]
0x1bfb8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+48>: str=
=20=20=20=20
r1, [sp, #8]
0x1bfbc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+52>: str=
=20=20=20=20
r0, [sp, #4]
0x1bfc0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+56>: str=
=20=20=20=20
r2, [sp]
0x1bfc4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+60>: b=
=20=20=20=20=20=20
0x1bfc8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+64>
0x1bfc8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+64>: ldr=
=20=20=20=20
r0, [sp]
0x1bfcc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+68>: str=
=20=20=20=20
r0, [sp, #12]
0x1bfd0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+72>: add=
=20=20=20=20
r1, sp, #12     ; 0xc
0x1bfd4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+76>: str=
=20=20=20=20
r1, [sp, #80]
0x1bfd8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+80>: b=
=20=20=20=20=20=20
0x1bfdc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+84>
0x1bfdc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+84>: ldr=
=20=20=20=20
r0, [sp, #4]
0x1bfe0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+88>: cmp=
=20=20=20=20
r0, #0  ; 0x0
0x1bfe4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+92>: beq=
=20=20=20=20
0x1c058 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+208>
0x1bfe8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+96>: b=
=20=20=20=20=20=20
0x1bfec <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+100>
0x1bfec <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+100>:=20=
=20=20=20=20=20=20
ldr     r0, [sp, #24]
0x1bff0 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+104>:=20=
=20=20=20=20=20=20
ldr     r0, [r0, #4]
0x1bff4 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+108>:=20=
=20=20=20=20=20=20
str     r0, [sp, #60]
0x1bff8 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+112>:=20=
=20=20=20=20=20=20
b       0x1bffc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+=
116>
0x1bffc <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+116>:=20=
=20=20=20=20=20=20
ldr     r0, [sp, #60]
0x1c000 <_ZNSt3__111__tree_nextIPNS_16__tree_node_baseIPvEEEET_S5_+120>:=20=
=20=20=20=20=20=20
ldr     r0, [r0]
(gdb) info reg
r0             0x1      1
r1             0xbfbfd018       -1077948392
r2             0x0      0
r3             0x0      0
r4             0xbfbfd080       -1077948288
r5             0xbfbfd964       -1077946012
r6             0xbfbfd8ec       -1077946132
r7             0xbfbfd8f0       -1077946128
r8             0x0      0
r9             0xbfbfed20       -1077940960
r10            0xbfbfed0c       -1077940980
r11            0xbfbfd108       -1077948152
r12            0xbfbfd274       -1077947788
sp             0xbfbfd00c       -1077948404
lr             0x56c40  355392
pc             0x1c000  114688
fps            0x20810d70       545328496
cpsr           0x20000010       536870928

For reference:

#0  std::__1::__tree_next<std::__1::__tree_node_base<void*>*> (__x=3D0xbfbf=
d274)
at __tree:126
126         while (__x->__left_ !=3D nullptr)

#1  0x00056c40 in std::__1::__tree<std::__1::__value_type<int, long long>,
std::__1::__map_value_compare<int, std::__1::__value_type<int, long long>,
std::__1::less<int>, true>, std::__1::allocator<std::__1::__value_type<int,
long long> > >::erase () at __tree:647
647               __tree_next(static_cast<typename
__node::base::pointer>(__ptr_)));

#2  0x0005180c in drivers::run_tests::drive (kyuafile_path=3D@0xbfbfd8f0,
build_root=3D<value optimized out>, store_path=3D@0xbfbfd964, filters=3D@0x=
bfbfd8e0,
user_config=3D@0xbfbfddc4, hooks=3D@0xbfbfd908)
   at map:1232
1232        iterator erase(iterator __p)       {return
__tree_.erase(__p.__i_);}

#3  0x000409bc in cli::cmd_test::run () at cli/cmd_test.cpp:158
158         const drivers::run_tests::result result =3D
drivers::run_tests::drive(

The FreeBSD port was built in a context with:

# more /etc/make.conf=20
DEFAULT_VERSIONS+=3Dperl5=3D5.22
WRKDIRPREFIX=3D/usr/obj/portswork
WITH_DEBUG=3D
WITH_DEBUG_FILES=3D
MALLOC_PRODUCTION=3D
TO_TYPE=3Darmv6
TOOLS_TO_TYPE=3Darm-gnueabi
VERSION_CONTEXT=3D11.0
CFLAGS+=3D-target ${TO_TYPE}--freebsd${VERSION_CONTEXT}-gnueabi -march=3Dar=
mv7-a
-mcpu=3Dcortex-a7 -mfloat-abi=3Dsoftfp -mno-unaligned-access

(buildworld/buildkernel also was based on the compile options via the src.c=
onf
that I use for such.)

Attempting to get a report for what kyua completed before the failure resul=
ts
in:

# kyua report --results-file=3D/usr/tests
kyua: E: Invalid metadata schema: attempt to write a readonly database (sql=
ite
op: sqlite3_prepare_v2) (sqlite db:
/root/.kyua/store/results.usr_tests.20160220-020457-015507.db).

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-207364-13>