[OE-core] [PATCH 2/5] valgrind: do not strip the package or ptests

Khem Raj raj.khem at gmail.com
Mon May 20 21:15:52 UTC 2019



On 5/15/19 12:11 PM, Randy MacLeod wrote:
> On 5/14/19 10:22 PM, Randy MacLeod wrote:
>> ...
> 
>> It's tempting to just bump the timeout to 300 seconds
>> since anything that fails with that timeout really should
>> be fixed. The right thing is to pass the timeout from ptest-runner
>> down to valgrind's vg_regtest script. If we have people who set
>> timeouts to a non-default value and will be running valgrind's
>> ptest then I could do that.
>>
>> Since I'm a completist, I'm going to try qemumips64 next! :)
> 
> Okay, so maybe I'm not a MIPS64 completist!
> 
> 

Let me try to help a bit.

> qemumips64 hangs on drd/tests/annotate_barrier. I'm not sure why.
> 
> When run under gdb:
> 
> (gdb) bt
> #0  vgPlain_machine_get_hwcaps () at ../../valgrind-3.15.0/coregrind/m_machine.c:1910
> #1  0x00000000580b5a80 in valgrind_main (argc=<optimized out>, argv=0x580bb430 <_start_in_C_linux+224>, envp=0x120015520)
>      at ../../valgrind-3.15.0/coregrind/m_main.c:1375
> #2  0x00000000580bb430 in _start_in_C_linux (pArgc=0xffffffabe0) at ../../valgrind-3.15.0/coregrind/m_main.c:2985
> #3  0x00000000580b47e8 in __start ()
> Backtrace stopped: frame did not save the PC
> (gdb) bt full
> #0  vgPlain_machine_get_hwcaps () at ../../valgrind-3.15.0/coregrind/m_machine.c:1910
>          have_MSA = 1 '\001'
>          saved_set = {sig = {0, 0}}
>          tmp_set = {sig = {8, 0}}
>          saved_sigill_act = {sa_flags = 0, ksa_handler = 0x0, sa_mask = {sig = {0, 0}}, sa_restorer = 0xffffffae8e}
>          tmp_sigill_act = {sa_flags = 1073741824, ksa_handler = 0x58036f90 <handler_unsup_insn>, sa_mask = {sig = {0, 0}}, sa_restorer = 0xffffffae8e}
>          r = <optimized out>
>          __PRETTY_FUNCTION__ = "vgPlain_machine_get_hwcaps"
> 
> 
> 1905          /* MSA instructions */
> 1906          have_MSA = True;
> 1907          if  (VG_MINIMAL_SETJMP(env_unsup_insn)) {
> 1908             have_MSA = False;
> 1909          }else  {
> 1910             __asm__ __volatile__(".word 0x7800088E");/* addv.b w2, w1, w0 */


I think its stuck executing this instruction which is checking for ASE 
support and I guess we do not have ASE enabled in qemumips64 base arch 
emulation, or the instruction behaves differently on 32bit and 64bit ABIs


> 1911          }
> 
> The qemumips64 ptests for valgrind are now on the back burner.
> 


> -- 
> # Randy MacLeod
> # Wind River Linux
> 
> 


More information about the Openembedded-core mailing list