Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at
Bug 1116747 - illegal opcode causes check failure on aarch64 on valgrind-3.9.0-svn20140513r13961
Summary: illegal opcode causes check failure on aarch64 on valgrind-3.9.0-svn20140513r...
Alias: None
Product: Fedora
Classification: Fedora
Component: valgrind
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Mark Wielaard
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: ARM64, F-ExcludeArch-aarch64
TreeView+ depends on / blocked
Reported: 2014-07-07 08:43 UTC by Peter Robinson
Modified: 2014-07-21 12:52 UTC (History)
4 users (show)

Fixed In Version: valgrind-3.9.0-19.svn20140715r14165
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2014-07-21 12:52:50 UTC
Type: Bug

Attachments (Terms of Use)

Description Peter Robinson 2014-07-07 08:43:49 UTC

If logs disappear latest failure can be seen here

Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.08FIoR
+ umask 022
+ cd /builddir/build/BUILD
+ cd valgrind-3.9.0-svn20140513r13961
+ ./vg-in-place /bin/true
==3931== Memcheck, a memory error detector
==3931== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==3931== Using Valgrind-3.10.0.SVN and LibVEX; rerun with -h for copyright info
==3931== Command: /bin/true
ARM64 front end: branch_etc
disInstr(arm64): unhandled instruction 0xD53BE043
disInstr(arm64): 1101'0101 0011'1011 1110'0000 0100'0011
==3931== valgrind: Unrecognised instruction at address 0x4004a68.
==3931==    at 0x4004A68: _dl_start (in /usr/lib64/
==3931==    by 0x4000DC7: ??? (in /usr/lib64/
==3931== Your program just tried to execute an instruction that Valgrind
==3931== did not recognise.  There are two possible reasons for this.
==3931== 1. Your program has a bug and erroneously jumped to a non-code
==3931==    location.  If you are running Memcheck and you just saw a
==3931==    warning about a bad jump, it's probably your program's fault.
==3931== 2. The instruction is legitimate but Valgrind doesn't handle it,
==3931==    i.e. it's Valgrind's fault.  If you think this is the case or
==3931==    you are not sure, please let us know and we'll try to fix it.
==3931== Either way, Valgrind will now raise a SIGILL signal which will
==3931== probably kill your program.
==3931== Process terminating with default action of signal 4 (SIGILL)
==3931==  Illegal opcode at address 0x4004A68
==3931==    at 0x4004A68: _dl_start (in /usr/lib64/
==3931==    by 0x4000DC7: ??? (in /usr/lib64/
==3931== HEAP SUMMARY:
==3931==     in use at exit: 0 bytes in 0 blocks
==3931==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==3931== All heap blocks were freed -- no leaks are possible
==3931== For counts of detected and suppressed errors, rerun with: -v
==3931== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
RPM build errors:
./vg-in-place: line 31:  3931 Illegal instruction     VALGRIND_LIB="$vgbasedir/.in_place" VALGRIND_LIB_INNER="$vgbasedir/.in_place" "$vgbasedir/coregrind/valgrind" "$@"
error: Bad exit status from /var/tmp/rpm-tmp.08FIoR (%check)
    Bad exit status from /var/tmp/rpm-tmp.08FIoR (%check)
Child return code was: 1

Comment 1 Mark Wielaard 2014-07-21 12:52:50 UTC
This was fixed upstream:
VEX r2900 arm64: implement "mrs Xt, cntvct_el0" by pass-through to the host.
This and some other arm64 fixes were imported by valgrind-3.9.0-19.svn20140715r14165 for f21 and rawhide.

Note You need to log in before you can comment on or make changes to this bug.