[OE-core] Valgrind : Unhanded instructions mfatbu and mfatbl

Bansal Aneesh-B39320 B39320 at freescale.com
Mon Jan 16 05:42:54 UTC 2012


Please find the patch attached in the mail.

Regards,
Aneesh Bansal

From: openembedded-core-bounces at lists.openembedded.org [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of Khem Raj
Sent: Friday, January 13, 2012 1:04 PM
To: Patches and discussions about the oe-core layer
Cc: Garg Vakul-B16394
Subject: Re: [OE-core] Valgrind : Unhanded instructions mfatbu and mfatbl


On Thu, Jan 12, 2012 at 9:43 PM, Bansal Aneesh-B39320 <B39320 at freescale.com<mailto:B39320 at freescale.com>> wrote:
Hello,

PowerPC uses two alternate time base registers which are read from user space
by using PPC instructions mfatbu and mfatbl . However these instructions are
not supported by Valgrind.
CPU : e500mc
Here are the logs when an application executing such instruction is executed
with Valgrind 3.7.0:

dis_proc_ctl(ppc)(mfspr,SPR)(0x20F)
disInstr(ppc): unhandled instruction: 0x7C0F82A6
                 primary 31(0x1F), secondary 678(0x2A6)
==2204== valgrind: Unrecognized instruction at address 0x10003dfc.
==2204==    at 0x10003DFC: ??? (in /usr/bin/simple_crypto)
==2204==    by 0x1000181B: ??? (in /usr/bin/simple_crypto)
==2204==    by 0xFE179E7: ??? (in /lib/libpthread-2.13.so<http://libpthread-2.13.so>)
==2204==    by 0x40EEA9B: ??? (in /lib/libc-2.13.so<http://libc-2.13.so>)
==2204== Your program just tried to execute an instruction that Valgrind
==2204== did not recognise.  There are two possible reasons for this.
==2204== 1. Your program has a bug and erroneously jumped to a non-code
==2204==    location.  If you are running Memcheck and you just saw a
==2204==    warning about a bad jump, it's probably your program's fault.
==2204== 2. The instruction is legitimate but Valgrind doesn't handle it,
==2204==    i.e. it's Valgrind's fault.  If you think this is the case or
==2204==    you are not sure, please let us know and we'll try to fix it.
==2204== Either way, Valgrind will now raise a SIGILL signal which will
==2204== probably kill your program.


We have developed a patch to fix the issue and submitted the patch upstream to Valgrind community for processing.


how about you also submit the patch to oe-core as well
so we can use it until the upstream patch lands in a release
that we will use



Regards,
Aneesh Bansal
Error! Filename not specified.
Plot No. – 18 | Sector-16 A, Noida – 201301
Phone  : 0120395 x3320


_______________________________________________
Openembedded-core mailing list
Openembedded-core at lists.openembedded.org<mailto:Openembedded-core at lists.openembedded.org>
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120116/93739e8a/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-add-mfatbu-mfatbl-instructions-support-in-Valgrind.patch
Type: application/octet-stream
Size: 5264 bytes
Desc: 0001-add-mfatbu-mfatbl-instructions-support-in-Valgrind.patch
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120116/93739e8a/attachment-0002.obj>


More information about the Openembedded-core mailing list