View previous topic :: View next topic |
Author |
Message |
fr3aker n00b
Joined: 07 Nov 2008 Posts: 14
|
Posted: Sun Dec 10, 2017 8:08 pm Post subject: gcc generating invalid instructions |
|
|
Apparently GCC is generating instructions that are not supported by my CPU (LeMaker Banana Pro with a Cortex-A7) and subsequently cause segmentation faults. This is very annoying because the issue mostly affects long-running emerges which sometimes fail due to the crash (or, even worse, complete despite the crash).
programs that are definitely affected are bash and make. I've debugged a crash in bash:
kernel log
Code: | kernel: Alignment trap: not handling instruction e3a0ca02 |
coredumpctl info
Code: | PID: 18945 (prepstrip)
UID: 0 (root)
GID: 0 (root)
Signal: 11 (SEGV)
Timestamp: Sun 2017-12-10 19:28:14 CET (44min ago)
Command Line: /bin/bash /usr/lib/portage/python3.5/ebuild-helpers/prepstrip /var/tmp/portage/sys-apps/coreutils-8.28/image/
Executable: /bin/bash
Storage: /var/lib/systemd/coredump/core.prepstrip.0.08aa81d8aa01483eb061503e9bd6148e.18945.1512930494000000.lz4
Message: Process 18945 (prepstrip) of user 0 dumped core. |
gdb backtrace
Code: | GNU gdb (Gentoo 8.0.1 vanilla) 8.0.1
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "armv7a-hardfloat-linux-gnueabi".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://bugs.gentoo.org/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /bin/bash...Reading symbols from /usr/lib/debug//bin/bash.debug...done.
done.
warning: core file may not match specified executable file.
[New LWP 18945]
Core was generated by `/bin/bash /usr/lib/portage/python3.5/ebuild-helpers/prepstrip /var/tmp/portage/'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 sigchld_handler (sig=17) at jobs.c:3418
3418 jobs.c: No such file or directory.
(gdb) bt
#0 sigchld_handler (sig=17) at jobs.c:3418
#1 <signal handler called>
#2 0xb6e4c63a in strcmp () from /lib/libc.so.6
#3 0x7f69b870 in hash_search (string=string@entry=0x7f6f0264 "PIPESTATUS", table=table@entry=0x8012aac0, flags=flags@entry=0) at hashlib.c:183
#4 0x7f672348 in hash_lookup (hashed_vars=0x8012aac0, name=0x7f6f0264 "PIPESTATUS") at variables.c:1821
#5 var_lookup (name=name@entry=0x7f6f0264 "PIPESTATUS", vcontext=<optimized out>) at variables.c:1839
#6 0x7f6724f8 in find_variable_internal (name=0x7f6f0264 "PIPESTATUS", flags=1) at variables.c:1878
#7 0x7f672be8 in find_variable_for_assignment (name=<optimized out>) at variables.c:2255
#8 0x7f67a434 in set_pipestatus_array (ps=0x7f715230 <v>, nproc=nproc@entry=1) at variables.c:5493
#9 0x7f67a7e4 in set_pipestatus_from_exit (s=s@entry=0) at variables.c:5589
#10 0x7f66a3a4 in execute_simple_command (simple_command=<optimized out>, pipe_in=<optimized out>, pipe_in@entry=-1, pipe_out=<optimized out>, pipe_out@entry=-1, async=async@entry=0, fds_to_close=<optimized out>, fds_to_close@entry=0x801858d8) at execute_cmd.c:4361
#11 0x7f66bbf4 in execute_command_internal (command=command@entry=0x80179698, asynchronous=asynchronous@entry=0, pipe_in=pipe_in@entry=-1, pipe_out=pipe_out@entry=-1, fds_to_close=<optimized out>, fds_to_close@entry=0x801858d8) at execute_cmd.c:802
#12 0x7f66d670 in execute_command (command=0x80179698) at execute_cmd.c:405
#13 0x7f66d828 in execute_while_or_until (while_command=0x801851e0, type=type@entry=0) at execute_cmd.c:3482
#14 0x7f66be34 in execute_while_command (while_command=<optimized out>) at execute_cmd.c:3450
#15 execute_command_internal (command=command@entry=0x80185288, asynchronous=asynchronous@entry=0, pipe_in=pipe_in@entry=-1, pipe_out=pipe_out@entry=-1, fds_to_close=<optimized out>, fds_to_close@entry=0x80187088) at execute_cmd.c:911
#16 0x7f66d670 in execute_command (command=0x80185288) at execute_cmd.c:405
#17 0x7f66c754 in execute_for_command (for_command=0x801852d8) at execute_cmd.c:2802
#18 execute_command_internal (command=0x7f719898 <continuing>, command@entry=0x801852f0, asynchronous=asynchronous@entry=0, pipe_in=pipe_in@entry=-1, pipe_out=pipe_out@entry=-1, fds_to_close=<optimized out>, fds_to_close@entry=0x80185278) at execute_cmd.c:883
#19 0x7f66d670 in execute_command (command=0x801852f0) at execute_cmd.c:405
#20 0x7f64faa0 in reader_loop () at eval.c:180
#21 0x7f64d75c in main (argc=0, argv=0x0, env=<optimized out>) at shell.c:792 |
gdb disassembly
Code: | (gdb) info line jobs.c:3418
Line 3418 of "jobs.c" starts at address 0x7f6844e4 <sigchld_handler> and ends at 0x7f6844fc <sigchld_handler+24>.
(gdb) disas /sr 0x7f6844e4
Dump of assembler code for function sigchld_handler:
jobs.c:
3418 in jobs.c
=> 0x7f6844e4 <+0>: 02 ca a0 e3 mov r12, #8192 ; 0x2000
0x7f6844e8 <+4>: 70 40 2d e9 push {r4, r5, r6, lr}
0x7f6844ec <+8>: 0c c0 4d e0 sub r12, sp, r12
0x7f6844f0 <+12>: e8 0f 8c e5 str r0, [r12, #4072] ; 0xfe8
0x7f6844f4 <+16>: 64 30 9f e5 ldr r3, [pc, #100] ; 0x7f684560 <sigchld_handler+124>
0x7f6844f8 <+20>: 08 d0 4d e2 sub sp, sp, #8
0x7f6844fc <+24>: 60 20 9f e5 ldr r2, [pc, #96] ; 0x7f684564 <sigchld_handler+128>
0x7f684500 <+28>: 03 30 8f e0 add r3, pc, r3
0x7f684504 <+32>: 02 50 93 e7 ldr r5, [r3, r2]
0x7f684508 <+36>: 00 30 95 e5 ldr r3, [r5]
0x7f68450c <+40>: 04 30 8d e5 str r3, [sp, #4] |
emerge --info
Code: | Portage 2.3.17 (python 3.5.4-final-0, hardened/linux/arm/armv7a, gcc-6.4.0, glibc-2.25-r9, 4.7.10-hardened-r2 armv7l)
=================================================================
System uname: Linux-4.7.10-hardened-r2-armv7l-ARMv7_Processor_rev_4_-v7l-with-gentoo-2.4.1
KiB Mem: 1026924 total, 93272 free
KiB Swap: 0 total, 0 free
Timestamp of repository gentoo: Sat, 09 Dec 2017 22:15:01 +0000
Head commit of repository gentoo: c3534718213f602cfb3088d3ba1269ea36d4535a
sh dash 0.5.9.1-r3
ld GNU ld (Gentoo 2.29.1 p3) 2.29.1
distcc 3.2rc1 armv7a-hardfloat-linux-gnueabi [disabled]
app-shells/bash: 4.4_p12::gentoo
dev-lang/perl: 5.26.1-r1::gentoo
dev-lang/python: 2.7.14-r1::gentoo, 3.4.6::gentoo, 3.5.4-r1::gentoo
dev-util/cmake: 3.10.0::gentoo
dev-util/pkgconfig: 0.29.2::gentoo
sys-apps/baselayout: 2.4.1-r2::gentoo
sys-apps/sandbox: 2.12::gentoo
sys-devel/autoconf: 2.69-r4::gentoo
sys-devel/automake: 1.13.4-r1::gentoo, 1.15.1-r1::gentoo
sys-devel/binutils: 2.29.1-r1::gentoo
sys-devel/gcc: 6.4.0::gentoo
sys-devel/gcc-config: 1.9.0-r1::gentoo
sys-devel/libtool: 2.4.6-r4::gentoo
sys-devel/make: 4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc: 2.25-r9::gentoo
Repositories:
gentoo
location: /usr/portage
sync-type: rsync
sync-uri: rsync://rsync10.de.gentoo.org/gentoo-portage
priority: -1000
sync-rsync-extra-opts:
leio
location: /var/lib/layman/leio
masters: gentoo
priority: 50
ACCEPT_KEYWORDS="arm ~arm"
ACCEPT_LICENSE="* -@EULA"
CBUILD="armv7a-hardfloat-linux-gnueabi"
CFLAGS="-O2 -pipe -fstack-protector-all -fno-strict-overflow -mfloat-abi=hard -mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4"
CHOST="armv7a-hardfloat-linux-gnueabi"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -fstack-protector-all -fno-strict-overflow -mfloat-abi=hard -mcpu=cortex-a7 -mtune=cortex-a7 -mfpu=neon-vfpv4"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe -march=armv7-a"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -march=armv7-a"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS=""
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl arm armv5te armv6 armv6t2 berkdb bzip2 caps cli cracklib crypt cxx dri gdbm gles2 hardened iconv ipv6 modules ncurses nls nptl openmp pam pcre pic pie readline seccomp session ssl ssp systemd tcpd unicode urandom xattr xtpax zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_ARM="edsp neon vfp vfpv3 vfpv4 vfp-d32 v4 v5 v6 v7 thumb2 thumb" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="fbturbo" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS |
Does anyone have an idea what exactly is causing those problems and how to fix it or further instructions to pin down the problem? I had similar problems (or the same) with older GCC versions (5.4.0, not sure if this device was running 4.9.3 at some point) and various versions of bash and make. |
|
Back to top |
|
|
erm67 l33t
Joined: 01 Nov 2005 Posts: 653 Location: EU
|
Posted: Sun Dec 10, 2017 8:44 pm Post subject: |
|
|
cat /proc/cpuinfo ?
also since you are using gcc 6 try this:
put this in test.c
Code: | main()
{double a=1;}
|
and try
gcc -march=native -Q -v test.c
to see what options gcc would use for your cpu. _________________ Ok boomer
True ignorance is not the absence of knowledge, but the refusal to acquire it.
Ab esse ad posse valet, a posse ad esse non valet consequentia
My fediverse account: @erm67@erm67.dynu.net |
|
Back to top |
|
|
fr3aker n00b
Joined: 07 Nov 2008 Posts: 14
|
Posted: Sun Dec 10, 2017 9:21 pm Post subject: |
|
|
Thanks for your reply!
/proc/cpuinfo
Code: | processor : 0
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 7.57
Features : half fastmult vfp edsp neon vfpv3 tls vfpv4 idiva vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 4
processor : 1
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 7.57
Features : half fastmult vfp edsp neon vfpv3 tls vfpv4 idiva vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 4
Hardware : Allwinner sun7i (A20) Family
Revision : 0000
Serial : 165166d709c24353 |
gcc -march=native -Q -v test.c
Code: | Using built-in specs.
COLLECT_GCC=/usr/armv7a-hardfloat-linux-gnueabi/gcc-bin/6.4.0/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/lto-wrapper
Target: armv7a-hardfloat-linux-gnueabi
Configured with: /var/tmp/portage/sys-devel/gcc-6.4.0/work/gcc-6.4.0/configure --host=armv7a-hardfloat-linux-gnueabi --build=armv7a-hardfloat-linux-gnueabi --prefix=/usr --bindir=/usr/armv7a-hardfloat-linux-gnueabi/gcc-bin/6.4.0 --includedir=/usr/lib/gcc/armv7a-hardfloat
-linux-gnueabi/6.4.0/include --datadir=/usr/share/gcc-data/armv7a-hardfloat-linux-gnueabi/6.4.0 --mandir=/usr/share/gcc-data/armv7a-hardfloat-linux-gnueabi/6.4.0/man --infodir=/usr/share/gcc-data/armv7a-hardfloat-linux-gnueabi/6.4.0/info --with-gxx-include-dir=/usr/lib/g
cc/armv7a-hardfloat-linux-gnueabi/6.4.0/include/g++-v6 --with-python-dir=/share/gcc-data/armv7a-hardfloat-linux-gnueabi/6.4.0/python --enable-languages=c,c++ --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext
--enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo Hardened 6.4.0 p1.0' --enable-esp --enable-libstdcxx-time --disable-libstdcxx-pch --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multil
ib --disable-altivec --disable-fixed-point --with-float=hard --with-arch=armv7-a --with-float=hard --with-fpu=vfpv3-d16 --disable-libgcj --enable-libgomp --disable-libmudflap --disable-libssp --disable-libcilkrts --disable-libmpx --enable-vtable-verify --enable-libvtv --
disable-libquadmath --enable-lto --without-isl --disable-libsanitizer --enable-default-pie --enable-default-ssp
Thread model: posix
gcc version 6.4.0 (Gentoo Hardened 6.4.0 p1.0)
COLLECT_GCC_OPTIONS= '-Q' '-v' '-mfloat-abi=hard' '-mfpu=vfpv3-d16' '-mtls-dialect=gnu' '-march=armv7ve'
/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/cc1 -v test.c -fstack-check -dumpbase test.c -mfloat-abi=hard -mfpu=vfpv3-d16 -mtls-dialect=gnu -march=armv7ve -auxbase a -version -o /tmp/ccih7SCr.s
GNU C11 (Gentoo Hardened 6.4.0 p1.0) version 6.4.0 (armv7a-hardfloat-linux-gnueabi)
compiled by GNU C version 6.4.0, GMP version 6.1.2, MPFR version 3.1.5-p2, MPC version 1.0.3, isl version none
warning: MPFR header version 3.1.5-p2 differs from library version 3.1.6.
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128365
ignoring nonexistent directory "/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../../armv7a-hardfloat-linux-gnueabi/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/include
/usr/local/include
/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/include-fixed
/usr/include
End of search list.
GNU C11 (Gentoo Hardened 6.4.0 p1.0) version 6.4.0 (armv7a-hardfloat-linux-gnueabi)
compiled by GNU C version 6.4.0, GMP version 6.1.2, MPFR version 3.1.5-p2, MPC version 1.0.3, isl version none
warning: MPFR header version 3.1.5-p2 differs from library version 3.1.6.
GGC heuristics: --param ggc-min-expand=98 --param ggc-min-heapsize=128365
options passed: -v test.c -fstack-check -mfloat-abi=hard -mfpu=vfpv3-d16
-mtls-dialect=gnu -march=armv7ve
options enabled: -fPIC -fPIE -faggressive-loop-optimizations
-fauto-inc-dec -fchkp-check-incomplete-type -fchkp-check-read
-fchkp-check-write -fchkp-instrument-calls -fchkp-narrow-bounds
-fchkp-optimize -fchkp-store-bounds -fchkp-use-static-bounds
-fchkp-use-static-const-bounds -fchkp-use-wrappers -fcommon
-fdelete-null-pointer-checks -fdwarf2-cfi-asm -fearly-inlining
-feliminate-unused-debug-types -ffunction-cse -fgcse-lm -fgnu-runtime
-fgnu-unique -fident -finline-atomics -fira-hoist-pressure
-fira-share-save-slots -fira-share-spill-slots -fivopts
-fkeep-static-consts -fleading-underscore -flifetime-dse
-flto-odr-type-merging -fmath-errno -fmerge-debug-strings -fpeephole -fplt
-fprefetch-loop-arrays -freg-struct-return -fsched-critical-path-heuristic
-fsched-dep-count-heuristic -fsched-group-heuristic -fsched-interblock
-fsched-last-insn-heuristic -fsched-rank-heuristic -fsched-spec
-fsched-spec-insn-heuristic -fsched-stalled-insns-dep
-fsemantic-interposition -fshow-column -fsigned-zeros
-fsplit-ivs-in-unroller -fssa-backprop -fstack-protector-all -fstdarg-opt
-fstrict-volatile-bitfields -fsync-libcalls -ftrapping-math -ftree-cselim
-ftree-forwprop -ftree-loop-if-convert -ftree-loop-im -ftree-loop-ivcanon
-ftree-loop-optimize -ftree-parallelize-loops= -ftree-phiprop
-ftree-reassoc -ftree-scev-cprop -funit-at-a-time -fvar-tracking
-fvar-tracking-assignments -fzero-initialized-in-bss -marm -mglibc
-mlittle-endian -mpic-data-is-text-relative -msched-prolog
-munaligned-access -mvectorize-with-neon-quad
Compiler executable checksum: fbd0aeb5598b467c880f507114c88a65
main
test.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
main()
^~~~
Analyzing compilation unit
Performing interprocedural optimizations
<*free_lang_data> <visibility> <build_ssa_passes> <opt_local_passes> <targetclone> <free-inline-summary> <whole-program> <inline>Assembling functions:
main
Execution times (seconds)
phase setup : 0.09 (64%) usr 0.00 ( 0%) sys 0.10 (62%) wall 1912 kB (93%) ggc
phase parsing : 0.01 ( 7%) usr 0.01 (100%) sys 0.01 ( 6%) wall 103 kB ( 5%) ggc
phase opt and generate : 0.04 (29%) usr 0.00 ( 0%) sys 0.04 (25%) wall 40 kB ( 2%) ggc
dump files : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 6%) wall 0 kB ( 0%) ggc
preprocessing : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 6%) wall 8 kB ( 0%) ggc
parser (global) : 0.01 ( 7%) usr 0.01 (100%) sys 0.00 ( 0%) wall 93 kB ( 5%) ggc
expand : 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 6%) wall 1 kB ( 0%) ggc
integrated RA : 0.01 ( 7%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 12 kB ( 1%) ggc
LRA virtuals elimination: 0.00 ( 0%) usr 0.00 ( 0%) sys 0.01 ( 6%) wall 0 kB ( 0%) ggc
final : 0.01 ( 7%) usr 0.00 ( 0%) sys 0.00 ( 0%) wall 0 kB ( 0%) ggc
initialize rtl : 0.02 (14%) usr 0.00 ( 0%) sys 0.01 ( 6%) wall 10 kB ( 1%) ggc
TOTAL : 0.14 0.01 0.16 2065 kB
COLLECT_GCC_OPTIONS= '-Q' '-v' '-mfloat-abi=hard' '-mfpu=vfpv3-d16' '-mtls-dialect=gnu' '-march=armv7ve'
/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../../armv7a-hardfloat-linux-gnueabi/bin/as -v -march=armv7ve -mfloat-abi=hard -mfpu=vfpv3-d16 -meabi=5 -o /tmp/ccCGk5PW.o /tmp/ccih7SCr.s
GNU assembler version 2.29.1 (armv7a-hardfloat-linux-gnueabi) using BFD version (Gentoo 2.29.1 p3) 2.29.1
COMPILER_PATH=/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/:/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/:/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/:/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/:/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/:/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../../armv7a-hardfloat-linux-gnueabi/bin/
LIBRARY_PATH=/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/:/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../../armv7a-hardfloat-linux-gnueabi/lib/:/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS= '-Q' '-v' '-mfloat-abi=hard' '-mfpu=vfpv3-d16' '-mtls-dialect=gnu' '-march=armv7ve'
/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/collect2 -plugin /usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/liblto_plugin.so -plugin-opt=/usr/libexec/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccwIoBuu.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --eh-frame-hdr -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -pie -z now /usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../Scrt1.o /usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../crti.o /usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/crtbeginS.o -L/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0 -L/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../../armv7a-hardfloat-linux-gnueabi/lib -L/usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../.. /tmp/ccCGk5PW.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/crtendS.o /usr/lib/gcc/armv7a-hardfloat-linux-gnueabi/6.4.0/../../../crtn.o
COLLECT_GCC_OPTIONS= '-Q' '-v' '-mfloat-abi=hard' '-mfpu=vfpv3-d16' '-mtls-dialect=gnu' '-march=armv7ve' |
I think at some point I did have march=armv7ve in my make.conf but that caused similar problems (or the same). Also I did have mfpu=vfpv3-d16 before but switched it to vfpv4 since the CPU supports that according to /proc/cpuinfo. I believe at first I was using march=native but switched from that to try to avoid the problem.
edit: just recompiled bash with CFLAGS="-O2 -pipe" and CXXFLAGS="-O2 -pipe" and it still produced the same instruction
edit: the compiled version of test.c included the same instruction and that did not cause any crash. The problem must be something more obscure. |
|
Back to top |
|
|
erm67 l33t
Joined: 01 Nov 2005 Posts: 653 Location: EU
|
Posted: Mon Dec 11, 2017 12:55 am Post subject: |
|
|
overheating maybe _________________ Ok boomer
True ignorance is not the absence of knowledge, but the refusal to acquire it.
Ab esse ad posse valet, a posse ad esse non valet consequentia
My fediverse account: @erm67@erm67.dynu.net |
|
Back to top |
|
|
fr3aker n00b
Joined: 07 Nov 2008 Posts: 14
|
Posted: Mon Dec 11, 2017 9:25 am Post subject: |
|
|
I considered that possibility and it would explain why make -j1 has a much higher probability to succeed than make -j2. But the crash in bash usually happens during stripping of binaries which should not cause any significant CPU load at all.
Does anyone know if the Allwinner A20 has temp sensors I can query? |
|
Back to top |
|
|
erm67 l33t
Joined: 01 Nov 2005 Posts: 653 Location: EU
|
Posted: Mon Dec 11, 2017 11:25 am Post subject: |
|
|
I wouldn't trust too much sensors on boards like that
Sometimes the problem is that the PSU is not powerfull enough.
What governor are you using? Try to lower the freq of the CPU.
Stripping binaries means read-write, do you have a usb hard disk powered by the board maybe? _________________ Ok boomer
True ignorance is not the absence of knowledge, but the refusal to acquire it.
Ab esse ad posse valet, a posse ad esse non valet consequentia
My fediverse account: @erm67@erm67.dynu.net |
|
Back to top |
|
|
n05ph3r42 Tux's lil' helper
Joined: 11 Jul 2016 Posts: 134
|
Posted: Mon Dec 11, 2017 7:57 pm Post subject: |
|
|
Quote: |
Sometimes the problem is that the PSU is not powerfull enough. |
Yupp! Absolutely right, those boards are very power-sensitive, if u use not original PSU, it will crash randomly. So you should check this first. Or at least ensure that current PSU gives voltage and ampers required by board manufacturer. |
|
Back to top |
|
|
fr3aker n00b
Joined: 07 Nov 2008 Posts: 14
|
Posted: Wed Dec 20, 2017 2:29 pm Post subject: |
|
|
I tried to switch my 1A PSU with a 2.1A PSU but still the same problem. Voltage is not a problem since the board is powered using (micro-)USB.
I'm using the ondemand governor. Setting the max frequency to 50% of the maximum possible frequency did not change anything (except things being a little slower).
I don't have a SATA or USB drive connected. The only permanent storage is the native microsd card. Other IO-expensive operations like emerge --sync don't crash either. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|