Bug 162456 - valgrind-3.2.3 on ppc fails
Summary: valgrind-3.2.3 on ppc fails
Status: RESOLVED WORKSFORME
Alias: None
Product: valgrind
Classification: Developer tools
Component: memcheck (show other bugs)
Version: 3.2.3
Platform: RedHat Enterprise Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Julian Seward
URL:
Keywords: investigated, triaged
Depends on:
Blocks:
 
Reported: 2008-05-22 08:49 UTC by pavanks
Modified: 2018-11-12 16:03 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description pavanks 2008-05-22 08:49:10 UTC
Hi,
I am getting the following error when i try to run valgrind-3.2.3 on
ppc machine.

Can anyone please let me know if there is any problem with the way i
built valgrind or any other issue.

(i used the following to build valgrind sources
/configure --host=powerpc-linux --disable-tls
make
make install)


cat /proc/cpuinfo

error log:


bash-2.05# ./valgrind /bin/date
==3468== Memcheck, a memory error detector.
==3468== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==3468== Using LibVEX rev 1732, a library for dynamic binary translation.
==3468== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==3468== Using valgrind-3.2.3, a dynamic binary instrumentation framework.
==3468== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==3468== For more details, rerun with: -v
==3468==
==3468==
==3468== Process terminating with default action of signal 11 (SIGSEGV)
==3468==  Bad permissions for mapped region at address 0x4024BF4
==3468==    at 0x4024BF4: ???
==3468==    by 0x40100E4: (within /lib/ld-2.2.5.so)
==3468==
==3468== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
==3468== malloc/free: in use at exit: 0 bytes in 0 blocks.
==3468== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
==3468== For counts of detected errors, rerun with: -v
==3468== All heap blocks were freed -- no leaks are possible.
Segmentation fault
bash-2.05#
Comment 1 pavanks 2008-05-22 09:03:39 UTC
Please ignore cat /proc/cpuinfo above, i meant giving the following information:

file valgrind
valgrind: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
Comment 2 Bart Van Assche 2008-05-22 09:43:20 UTC
Can you please add the output of valgrind -v /bin/date, as requested on 
http://www.valgrind.org/support/bug_reports.html ?
Comment 3 pavanks 2008-05-23 07:19:05 UTC
Bart, gdb is not currently available, i will try to get that and
let you know the trace. I have made the following information for now:

Please Let me know if this helps.

logs:
bash-2.05# ./valgrind --vex-guest-chase-thresh=0
--trace-flags=10000000 --trace-notbelow=999999 /bin/date
==4709== Memcheck, a memory error detector.
==4709== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==4709== Using LibVEX rev 1732, a library for dynamic binary translation.
==4709== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==4709== Using valgrind-3.2.3, a dynamic binary instrumentation framework.
==4709== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==4709== For more details, rerun with: -v
==4709==
==== BB 0 (0x40100D4) BBs exec'd 0 ====
==== BB 1 (0x4001D60) BBs exec'd 1 ====
==== BB 2 (0x4001DA4) BBs exec'd 2 ====
==== BB 3 (0x4024BF4) BBs exec'd 3 ====
==4709==
==4709== Process terminating with default action of signal 11 (SIGSEGV)
==4709==  Bad permissions for mapped region at address 0x4024BF4
==4709==    at 0x4024BF4: ???
==4709==    by 0x40100E4: (within /lib/ld-2.2.5.so)
==4709==
==4709== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
==4709== malloc/free: in use at exit: 0 bytes in 0 blocks.
==4709== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
==4709== For counts of detected errors, rerun with: -v
==4709== All heap blocks were freed -- no leaks are possible.
Segmentation fault
bash-2.05#


bash-2.05# ./valgrind --vex-guest-chase-thresh=0
--trace-flags=10000000 --trace-notbelow=0x4024BF4 /bin/date
==4706== Memcheck, a memory error detector.
==4706== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==4706== Using LibVEX rev 1732, a library for dynamic binary translation.
==4706== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==4706== Using valgrind-3.2.3, a dynamic binary instrumentation framework.
==4706== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==4706== For more details, rerun with: -v
==4706==
==== BB 0 (0x40100D4) BBs exec'd 0 ====

------------------------ Front end ------------------------

       0x40100D4:  mr r3,r1

             ------ IMark(0x40100D4, 4) ------
             t0 = GET:I32(4)
             t2 = GET:I32(4)
             t1 = t0
             PUT(12) = t1

       0x40100D8:  li r4,0

             ------ IMark(0x40100D8, 4) ------
             PUT(896) = 0x40100D8:I32
             t3 = GET:I32(0)
             t4 = GET:I32(0)
             t5 = 0x0:I32
             PUT(16) = t5

       0x40100DC:  addi r1,r1,-16

             ------ IMark(0x40100DC, 4) ------
             PUT(896) = 0x40100DC:I32
             t6 = GET:I32(4)
             t7 = GET:I32(124)
             t8 = Add32(t6,0xFFFFFFF0:I32)
             PUT(4) = t8

       0x40100E0:  stw r4,0(r1)

             ------ IMark(0x40100E0, 4) ------
             PUT(896) = 0x40100E0:I32
             t10 = GET:I32(0)
             t9 = GET:I32(16)
             t11 = Add32(GET:I32(4),0x0:I32)
             STbe(t11) = t9

       0x40100E4:  bl 0x4001D60

             ------ IMark(0x40100E4, 4) ------
             PUT(896) = 0x40100E4:I32
             PUT(900) = 0x40100E8:I32
             goto {Call} 0x4001D60:I32

. 0 40100D4 20
. 7C 23 0B 78 38 80 00 00 38 21 FF F0 90 81 00 00 4B FF 1C 7D

==== BB 1 (0x4001D60) BBs exec'd 1 ====

------------------------ Front end ------------------------

       0x4001D60:  stwu r1,-544(r1)

             ------ IMark(0x4001D60, 4) ------
             t1 = GET:I32(124)
             t0 = GET:I32(4)
             t2 = Add32(GET:I32(4),0xFFFFFDE0:I32)
             PUT(4) = t2
             STbe(t2) = t0

       0x4001D64:  mflr r0

             ------ IMark(0x4001D64, 4) ------
             PUT(896) = 0x4001D64:I32
             t3 = GET:I32(0)
             PUT(0) = GET:I32(900)

       0x4001D68:  stw r20,496(r1)

             ------ IMark(0x4001D68, 4) ------
             PUT(896) = 0x4001D68:I32
             t5 = GET:I32(0)
             t4 = GET:I32(80)
             t6 = Add32(GET:I32(4),0x1F0:I32)
             STbe(t6) = t4

       0x4001D6C:  stw r21,500(r1)

             ------ IMark(0x4001D6C, 4) ------
             PUT(896) = 0x4001D6C:I32
             t8 = GET:I32(0)
             t7 = GET:I32(84)
             t9 = Add32(GET:I32(4),0x1F4:I32)
             STbe(t9) = t7

       0x4001D70:  stw r22,504(r1)

             ------ IMark(0x4001D70, 4) ------
             PUT(896) = 0x4001D70:I32
             t11 = GET:I32(0)
             t10 = GET:I32(88)
             t12 = Add32(GET:I32(4),0x1F8:I32)
             STbe(t12) = t10

       0x4001D74:  stw r23,508(r1)

             ------ IMark(0x4001D74, 4) ------
             PUT(896) = 0x4001D74:I32
             t14 = GET:I32(0)
             t13 = GET:I32(92)
             t15 = Add32(GET:I32(4),0x1FC:I32)
             STbe(t15) = t13

       0x4001D78:  stw r24,512(r1)

             ------ IMark(0x4001D78, 4) ------
             PUT(896) = 0x4001D78:I32
             t17 = GET:I32(0)
             t16 = GET:I32(96)
             t18 = Add32(GET:I32(4),0x200:I32)
             STbe(t18) = t16

       0x4001D7C:  stw r25,516(r1)

             ------ IMark(0x4001D7C, 4) ------
             PUT(896) = 0x4001D7C:I32
             t20 = GET:I32(0)
             t19 = GET:I32(100)
             t21 = Add32(GET:I32(4),0x204:I32)
             STbe(t21) = t19

       0x4001D80:  stw r26,520(r1)

             ------ IMark(0x4001D80, 4) ------
             PUT(896) = 0x4001D80:I32
             t23 = GET:I32(0)
             t22 = GET:I32(104)
             t24 = Add32(GET:I32(4),0x208:I32)
             STbe(t24) = t22

       0x4001D84:  stw r27,524(r1)

             ------ IMark(0x4001D84, 4) ------
             PUT(896) = 0x4001D84:I32
             t26 = GET:I32(0)
             t25 = GET:I32(108)
             t27 = Add32(GET:I32(4),0x20C:I32)
             STbe(t27) = t25

       0x4001D88:  stw r28,528(r1)

             ------ IMark(0x4001D88, 4) ------
             PUT(896) = 0x4001D88:I32
             t29 = GET:I32(0)
             t28 = GET:I32(112)
             t30 = Add32(GET:I32(4),0x210:I32)
             STbe(t30) = t28

       0x4001D8C:  stw r29,532(r1)

             ------ IMark(0x4001D8C, 4) ------
             PUT(896) = 0x4001D8C:I32
             t32 = GET:I32(0)
             t31 = GET:I32(116)
             t33 = Add32(GET:I32(4),0x214:I32)
             STbe(t33) = t31

       0x4001D90:  stw r30,536(r1)

             ------ IMark(0x4001D90, 4) ------
             PUT(896) = 0x4001D90:I32
             t35 = GET:I32(0)
             t34 = GET:I32(120)
             t36 = Add32(GET:I32(4),0x218:I32)
             STbe(t36) = t34

       0x4001D94:  stw r31,540(r1)

             ------ IMark(0x4001D94, 4) ------
             PUT(896) = 0x4001D94:I32
             t38 = GET:I32(0)
             t37 = GET:I32(124)
             t39 = Add32(GET:I32(4),0x21C:I32)
             STbe(t39) = t37

       0x4001D98:  stw r0,548(r1)

             ------ IMark(0x4001D98, 4) ------
             PUT(896) = 0x4001D98:I32
             t41 = GET:I32(0)
             t40 = GET:I32(0)
             t42 = Add32(GET:I32(4),0x224:I32)
             STbe(t42) = t40

       0x4001D9C:  bl 0x4001DA4

             ------ IMark(0x4001D9C, 4) ------
             PUT(896) = 0x4001D9C:I32
             PUT(900) = 0x4001DA0:I32
             goto {Call} 0x4001DA4:I32

. 0 4001D60 64
. 94 21 FD E0 7C 08 02 A6 92 81 01 F0 92 A1 01 F4 92 C1 01 F8 92 E1 01
FC 93 01 02 00 93 21 02 04 93 41 02 08 93 61 02 0C 93 81 02 10 93 A1
02 14 93 C1 02 18 93 E1 02 1C 90 01 02 24 48 00 00 09

==== BB 2 (0x4001DA4) BBs exec'd 2 ====

------------------------ Front end ------------------------

       0x4001DA4:  li r7,53

             ------ IMark(0x4001DA4, 4) ------
             t0 = GET:I32(0)
             t1 = GET:I32(0)
             t2 = 0x35:I32
             PUT(28) = t2

       0x4001DA8:  mflr r11

             ------ IMark(0x4001DA8, 4) ------
             PUT(896) = 0x4001DA8:I32
             t3 = GET:I32(44)
             PUT(44) = GET:I32(900)

       0x4001DAC:  mtctr r7

             ------ IMark(0x4001DAC, 4) ------
             PUT(896) = 0x4001DAC:I32
             t4 = GET:I32(28)
             PUT(904) = t4

       0x4001DB0:  bl 0x4024BF4

             ------ IMark(0x4001DB0, 4) ------
             PUT(896) = 0x4001DB0:I32
             PUT(900) = 0x4001DB4:I32
             goto {Call} 0x4024BF4:I32

. 0 4001DA4 16
. 38 E0 00 35 7D 68 02 A6 7C E9 03 A6 48 02 2E 45

==== BB 3 (0x4024BF4) BBs exec'd 3 ====
==4706==
==4706== Process terminating with default action of signal 11 (SIGSEGV)
==4706==  Bad permissions for mapped region at address 0x4024BF4
==4706==    at 0x4024BF4: ???
==4706==    by 0x40100E4: (within /lib/ld-2.2.5.so)
==4706==
==4706== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
==4706== malloc/free: in use at exit: 0 bytes in 0 blocks.
==4706== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
==4706== For counts of detected errors, rerun with: -v
==4706== All heap blocks were freed -- no leaks are possible.
Segmentation fault



Comment 4 pavanks 2008-05-23 08:24:37 UTC
iam using remote debugging for some problem. iam not able to get uch informaton except it fails at below in coregrind/launcher.c which may not be much useful


 execve(toolfile, argv, new_env)
Comment 5 pavanks 2008-06-02 07:56:20 UTC
Iam unable to step in through execve to determine the exact line in memcheck tool.

running /etc/valgrind/lib/valgrind/ppc32-linux/memcheck is not working.

it gives me the below error:
valgrind: You cannot run '/etc/valgrind/lib/valgrind/ppc32-linux/memcheck' directly.
valgrind: You should use $prefix/bin/valgrind.

added output of valgrind -v /bin/date

valgrind -v /bin/date
==1010== Memcheck, a memory error detector.
==1010== Copyright (C) 2002-2007, and GNU GPL'd, by Julian S
eward et al.
==1010== Using LibVEX rev 1732, a library for dynamic binary
 translation.
==1010== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWork
s LLP.
==1010== Using valgrind-3.2.3, a dynamic binary instrumentat
ion framework.
==1010== Copyright (C) 2000-2007, and GNU GPL'd, by Julian S
eward et al.
==1010==
--1010-- Command line
--1010--    /bin/date
--1010-- Startup, with flags:
--1010--    -v
--1010-- Contents of /proc/version:
--1010--   Linux version 2.4.20-denx-LINUX_REL_A_2_2  (santa
nu@sephia) (gcc version 2.95.4 20010319 (prerelease/franzo/2
0011204)) #1 Wed Nov 28 19:42:52 IST 2007
--1010-- Arch and hwcaps: PPC32, ppc32-int-flt-GX
--1010-- Page sizes: currently 4096, max supported 65536
--1010-- Valgrind library directory: /etc/valgrind/lib/valgr
ind
--1010-- Reading syms from /lib/ld-2.2.5.so (0x4000000)
--1010--    object doesn't have a symbol table
--1010-- Reading syms from /bin/busybox (0x10000000)
--1010--    object doesn't have a symbol table
--1010-- Reading syms from /etc/valgrind/lib/valgrind/ppc32-
linux/memcheck (0x38000000)
--1010--    object doesn't have a dynamic symbol table
--1010-- Reading suppressions file: /etc/valgrind/lib/valgri
nd/default.supp
==1010==
==1010== Process terminating with default action of signal 1
1 (SIGSEGV)
==1010==  Bad permissions for mapped region at address 0x402
4BF4
==1010==    at 0x4024BF4: ???
==1010==    by 0x40100E4: (within /lib/ld-2.2.5.so)
==1010==
==1010== ERROR SUMMARY: 0 errors from 0 contexts (suppressed
: 0 from 0)
==1010== malloc/free: in use at exit: 0 bytes in 0 blocks.
==1010== malloc/free: 0 allocs, 0 frees, 0 bytes allocated.
==1010==
==1010== All heap blocks were freed -- no leaks are possible
.
--1010--  memcheck: sanity checks: 0 cheap, 1 expensive
--1010--  memcheck: auxmaps: 0 auxmap entries (0k, 0M) in us
e
--1010--  memcheck: auxmaps: 0 searches, 0 comparisons
--1010--  memcheck: SMs: n_issued      = 7 (112k, 0M)
--1010--  memcheck: SMs: n_deissued    = 0 (0k, 0M)
--1010--  memcheck: SMs: max_noaccess  = 65535 (1048560k, 10
23M)
--1010--  memcheck: SMs: max_undefined = 0 (0k, 0M)
--1010--  memcheck: SMs: max_defined   = 5 (80k, 0M)
--1010--  memcheck: SMs: max_non_DSM   = 7 (112k, 0M)
--1010--  memcheck: max sec V bit nodes:    0 (0k, 0M)
--1010--  memcheck: set_sec_vbits8 calls: 0 (new: 0, updates                                                  : 0)
--1010--  memcheck: max shadow mem size:   416k, 0M
--1010-- translate:            fast SP updates identified: 1                                                   ( 50.0%)
--1010-- translate:   generic_known SP updates identified: 1                                                   ( 50.0%)
--1010-- translate: generic_unknown SP updates identified: 0                                                   (  0.0%)
--1010--     tt/tc: 5 tt lookups requiring 4 probes
--1010--     tt/tc: 4 fast-cache updates, 2 flushes
--1010--  transtab: new        2 (100 -> 1,112; ratio 111:10                                                  ) [0 scs]
--1010--  transtab: dumped     0 (0 -> ??)
--1010--  transtab: discarded  0 (0 -> ??)
--1010-- scheduler: 2 jumps (bb entries).
--1010-- scheduler: 0/3 major/minor sched events.
--1010--    sanity: 1 cheap, 1 expensive checks.
--1010--    exectx: 30,011 lists, 0 contexts (avg 0 per list                                                  )
--1010--    exectx: 0 searches, 0 full compares (0 per 1000)
--1010--    exectx: 0 cmp2, 0 cmp4, 0 cmpAll
Segmentation fault

Comment 6 Julian Seward 2008-11-02 03:19:34 UTC
Any further info on this?  I am inclined to close it unless
more info appears -- there is not enough here to establish
the problem.
Comment 7 Nicholas Nethercote 2009-06-26 04:19:18 UTC
Closing as per comment #6.
Comment 8 Andrew Crouthamel 2018-09-19 04:32:16 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 9 Bug Janitor Service 2018-11-12 16:03:37 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!