Bug 1087933
Summary: | Valgrind does not recognize bndmov instruction | |||
---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Paulo Andrade <paulo.cesar.pereira.de.andrade> | |
Component: | valgrind | Assignee: | Jakub Jelinek <jakub> | |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
Severity: | unspecified | Docs Contact: | ||
Priority: | unspecified | |||
Version: | rawhide | CC: | abeekhof, dodji, jakub, kalevlember, matteo, mjw, mjw, redhat-bugzilla, zbyszek | |
Target Milestone: | --- | |||
Target Release: | --- | |||
Hardware: | x86_64 | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | valgrind-3.9.0-12.svn20140319r13879.fc21.src.rpm | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1147137 (view as bug list) | Environment: | ||
Last Closed: | 2014-05-08 16:05:42 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | ||||
Bug Blocks: | 1147137 |
Description
Paulo Andrade
2014-04-15 15:46:29 UTC
Confirmed. With vgdb attached and glibc-debuginfo installed: Program received signal SIGILL, Illegal instruction. _dl_runtime_resolve () at ../sysdeps/x86_64/dl-trampoline.S:72 72 bndmov %bnd0, REGISTER_SAVE_BND0(%rsp) (gdb) list 67 movq %r9, REGISTER_SAVE_R9(%rsp) 68 #ifndef __ILP32__ 69 # We also have to preserve bound registers. These are nops if 70 # Intel MPX isn't available or disabled. 71 # ifdef HAVE_MPX_SUPPORT 72 bndmov %bnd0, REGISTER_SAVE_BND0(%rsp) 73 bndmov %bnd1, REGISTER_SAVE_BND1(%rsp) 74 bndmov %bnd2, REGISTER_SAVE_BND2(%rsp) 75 bndmov %bnd3, REGISTER_SAVE_BND3(%rsp) 76 # else (gdb) 77 .byte 0x66,0x0f,0x1b,0x44,0x24,REGISTER_SAVE_BND0 78 .byte 0x66,0x0f,0x1b,0x4c,0x24,REGISTER_SAVE_BND1 79 .byte 0x66,0x0f,0x1b,0x54,0x24,REGISTER_SAVE_BND2 80 .byte 0x66,0x0f,0x1b,0x5c,0x24,REGISTER_SAVE_BND3 81 # endif 82 #endif 83 # Copy args pushed by PLT in register. 84 # %rdi: link_map, %rsi: reloc_index 85 movq (REGISTER_SAVE_AREA + 8)(%rsp), %rsi 86 movq REGISTER_SAVE_AREA(%rsp), %rdi (gdb) So in theory this should be easy to implement assuming we can just make bndmov into a NOP for valgrind. Reported upstream https://bugs.kde.org/show_bug.cgi?id=333666 *** Bug 1091056 has been marked as a duplicate of this bug. *** *** Bug 1086986 has been marked as a duplicate of this bug. *** I submitted a fix upsteam and included it in the new valgrind-3.9.0-12.svn20140319r13879.fc21 You are a hero, thanks! |