Please check the dhat could run in the ELF32 mode in x86-64.

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Please check the dhat could run in the ELF32 mode in x86-64.

Wuweijia

Hi: I compile the code in x86-64 machine, and run dhat . it is ok.

The compile cmd: gcc -g -O0  main.c

The dhat cmd valgrind –tool=exp-dhat ./a.out

 

 

But I compile the same code in the same machine, but another compile cmd,  and run dhat. It failed.

The compile cmd: gcc -g -O0 -m32 main.c

The dhat cmd valgrind –tool=exp-dhat ./a.out

 

I just compile same code into ELF32 mode.

 

 

The output as below:

DHAT: dh_main.c:756 (dh_handle_noninsn_write): the 'impossible' happened.

 

host stacktrace:

==84382==    at 0x3800C886: show_sched_status_wrk (m_libcassert.c:343)

==84382==    by 0x3800C9C6: report_and_quit (m_libcassert.c:419)

==84382==    by 0x3800CAEB: vgPlain_assert_fail (m_libcassert.c:485)

==84382==    by 0x38008623: dh_handle_noninsn_write (dh_main.c:756)

==84382==    by 0x38010558: final_tidyup (m_main.c:2798)

==84382==    by 0x38010A54: shutdown_actions_NORETURN (m_main.c:2564)

==84382==    by 0x38078E90: run_a_thread_NORETURN (syswrap-linux.c:199)

 

sched status:

  running_tid=1

 

Thread 1: status = VgTs_Runnable (lwpid 84382)

==84382==    at 0x402452B: _vgnU_freeres (vg_preloaded.c:59)

==84382==    by 0x2: ???

 

 

The valgrind version is 3.12.0

 

root@SZV1000161574:/usr1/code/source/test# gcc --version

gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4

Copyright (C) 2013 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is

 

 

Does dhat support elf32 mode?

 

BR

Owen


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Valgrind-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

output.log (7K) Download Attachment
main.c (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

答复: Please check the dhat could run in the ELF32 mode in x86-64.

Wuweijia

Hi, there are some progress I analyzed.

     1:  If function main is empty, it also failed. The code as below.

    #include    <stdio.h>

#include    <stdlib.h>

#include    <string.h>

#include    <fcntl.h>

#include    <unistd.h>

#include    <sys/mman.h>

#include    <sys/types.h>

#include    <sys/stat.h>

 

int main(int argc, char *argv[])

{

Return 0;

}

  

The compile cmd: gcc -g -O0 -m32 main.c

 

 

2:  This static void final_tidyup(ThreadId tid) send the Vg_CoreClientReq cmd, and dh_handle_noninsn_write  go the default branch. But In x86_64 mode,  it never go the default branch.

 

It is very urgent now. Can you show me how to resolve it .

 

BR

Owen

 

 

 

发件人: Wuweijia
发送时间: 2017623 11:20
收件人: [hidden email]
抄送: Fanbohao <[hidden email]>
主题: Please check the dhat could run in the ELF32 mode in x86-64.

 

Hi: I compile the code in x86-64 machine, and run dhat . it is ok.

The compile cmd: gcc -g -O0  main.c

The dhat cmd valgrind �Ctool=exp-dhat ./a.out

 

 

But I compile the same code in the same machine, but another compile cmd,  and run dhat. It failed.

The compile cmd: gcc -g -O0 -m32 main.c

The dhat cmd valgrind �Ctool=exp-dhat ./a.out

 

I just compile same code into ELF32 mode.

 

 

The output as below:

DHAT: dh_main.c:756 (dh_handle_noninsn_write): the 'impossible' happened.

 

host stacktrace:

==84382==    at 0x3800C886: show_sched_status_wrk (m_libcassert.c:343)

==84382==    by 0x3800C9C6: report_and_quit (m_libcassert.c:419)

==84382==    by 0x3800CAEB: vgPlain_assert_fail (m_libcassert.c:485)

==84382==    by 0x38008623: dh_handle_noninsn_write (dh_main.c:756)

==84382==    by 0x38010558: final_tidyup (m_main.c:2798)

==84382==    by 0x38010A54: shutdown_actions_NORETURN (m_main.c:2564)

==84382==    by 0x38078E90: run_a_thread_NORETURN (syswrap-linux.c:199)

 

sched status:

  running_tid=1

 

Thread 1: status = VgTs_Runnable (lwpid 84382)

==84382==    at 0x402452B: _vgnU_freeres (vg_preloaded.c:59)

==84382==    by 0x2: ???

 

 

The valgrind version is 3.12.0

 

root@SZV1000161574:/usr1/code/source/test# gcc --version

gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4

Copyright (C) 2013 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is

 

 

Does dhat support elf32 mode?

 

BR

Owen

 


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Valgrind-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/valgrind-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

答复: Please check the dhat could run in the ELF32 mode in x86-64.

Wuweijia
In reply to this post by Wuweijia

Any guy focus on this bug? There is still no answer now.

 

发件人: Wuweijia
发送时间: 2017623 16:54
收件人: '[hidden email]' <[hidden email]>
抄送: Fanbohao <[hidden email]>
主题: 答复: Please check the dhat could run in the ELF32 mode in x86-64.

 

Hi, there are some progress I analyzed.

     1:  If function main is empty, it also failed. The code as below.

    #include    <stdio.h>

#include    <stdlib.h>

#include    <string.h>

#include    <fcntl.h>

#include    <unistd.h>

#include    <sys/mman.h>

#include    <sys/types.h>

#include    <sys/stat.h>

 

int main(int argc, char *argv[])

{

Return 0;

}

  

The compile cmd: gcc -g -O0 -m32 main.c

 

 

2:  This static void final_tidyup(ThreadId tid) send the Vg_CoreClientReq cmd, and dh_handle_noninsn_write  go the default branch. But In x86_64 mode,  it never go the default branch.

 

It is very urgent now. Can you show me how to resolve it .

 

BR

Owen

 

 

 

发件人: Wuweijia
发送时间: 2017623 11:20
收件人: [hidden email]
抄送: Fanbohao <[hidden email]>
主题: Please check the dhat could run in the ELF32 mode in x86-64.

 

Hi: I compile the code in x86-64 machine, and run dhat . it is ok.

The compile cmd: gcc -g -O0  main.c

The dhat cmd valgrind �Ctool=exp-dhat ./a.out

 

 

But I compile the same code in the same machine, but another compile cmd,  and run dhat. It failed.

The compile cmd: gcc -g -O0 -m32 main.c

The dhat cmd valgrind �Ctool=exp-dhat ./a.out

 

I just compile same code into ELF32 mode.

 

 

The output as below:

DHAT: dh_main.c:756 (dh_handle_noninsn_write): the 'impossible' happened.

 

host stacktrace:

==84382==    at 0x3800C886: show_sched_status_wrk (m_libcassert.c:343)

==84382==    by 0x3800C9C6: report_and_quit (m_libcassert.c:419)

==84382==    by 0x3800CAEB: vgPlain_assert_fail (m_libcassert.c:485)

==84382==    by 0x38008623: dh_handle_noninsn_write (dh_main.c:756)

==84382==    by 0x38010558: final_tidyup (m_main.c:2798)

==84382==    by 0x38010A54: shutdown_actions_NORETURN (m_main.c:2564)

==84382==    by 0x38078E90: run_a_thread_NORETURN (syswrap-linux.c:199)

 

sched status:

  running_tid=1

 

Thread 1: status = VgTs_Runnable (lwpid 84382)

==84382==    at 0x402452B: _vgnU_freeres (vg_preloaded.c:59)

==84382==    by 0x2: ???

 

 

The valgrind version is 3.12.0

 

root@SZV1000161574:/usr1/code/source/test# gcc --version

gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4

Copyright (C) 2013 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.  There is

 

 

Does dhat support elf32 mode?

 

BR

Owen

 


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Valgrind-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/valgrind-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: 答复: Please check the dhat could run in the ELF32 mode in x86-64.

Philippe Waroquiers
This looks like a bug related to running libc free resource hooks.

You can bypass the problem by giving the parameters:

--run-libc-freeres=no --run-cxx-freeres=no

Please file a bug on bugzilla.

Thanks

Philippe

On Sat, 2017-06-24 at 09:35 +0000, Wuweijia wrote:

> Any guy focus on this bug? There is still no answer now.
>
>  
>
> 发件人: Wuweijia
> 发送时间: 2017年6月23日 16:54
> 收件人: '[hidden email]'
> <[hidden email]>
> 抄送: Fanbohao <[hidden email]>
> 主题: 答复: Please check the dhat could run in the ELF32 mode in
> x86-64.
>
>
>  
>
> Hi, there are some progress I analyzed.
>
>      1:  If function main is empty, it also failed. The code as below.
>
>     #include    <stdio.h>
>
> #include    <stdlib.h>
>
> #include    <string.h>
>
> #include    <fcntl.h>
>
> #include    <unistd.h>
>
> #include    <sys/mman.h>
>
> #include    <sys/types.h>
>
> #include    <sys/stat.h>
>
>  
>
> int main(int argc, char *argv[])
>
> {
>
> Return 0;
>
> }
>
>    
>
> The compile cmd: gcc -g -O0 -m32main.c
>
>  
>
>  
>
> 2:  This static void final_tidyup(ThreadId tid) send the
> Vg_CoreClientReq cmd, and dh_handle_noninsn_write  go the default
> branch. But In x86_64 mode,  it never go the default branch.
>
>  
>
> It is very urgent now. Can you show me how to resolve it .
>
>  
>
> BR
>
> Owen
>
>  
>
>  
>
>  
>
> 发件人: Wuweijia
> 发送时间: 2017年6月23日 11:20
> 收件人: [hidden email]
> 抄送: Fanbohao <[hidden email]>
> 主题: Please check the dhat could run in the ELF32 mode in x86-64.
>
>
>  
>
> Hi: I compile the code in x86-64 machine, and run dhat . it is ok.
>
> The compile cmd: gcc -g -O0  main.c
>
> The dhat cmd valgrind –tool=exp-dhat ./a.out
>
>  
>
>  
>
> But I compile the same code in the same machine, but another compile
> cmd,  and run dhat. It failed.
>
> The compile cmd: gcc -g -O0 -m32main.c
>
> The dhat cmd valgrind –tool=exp-dhat ./a.out
>
>  
>
> I just compile same code into ELF32 mode.
>
>  
>
>  
>
> The output as below:
>
> DHAT: dh_main.c:756 (dh_handle_noninsn_write): the 'impossible'
> happened.
>
>  
>
> host stacktrace:
>
> ==84382==    at 0x3800C886: show_sched_status_wrk (m_libcassert.c:343)
>
> ==84382==    by 0x3800C9C6: report_and_quit (m_libcassert.c:419)
>
> ==84382==    by 0x3800CAEB: vgPlain_assert_fail (m_libcassert.c:485)
>
> ==84382==    by 0x38008623: dh_handle_noninsn_write (dh_main.c:756)
>
> ==84382==    by 0x38010558: final_tidyup (m_main.c:2798)
>
> ==84382==    by 0x38010A54: shutdown_actions_NORETURN (m_main.c:2564)
>
> ==84382==    by 0x38078E90: run_a_thread_NORETURN
> (syswrap-linux.c:199)
>
>  
>
> sched status:
>
>   running_tid=1
>
>  
>
> Thread 1: status = VgTs_Runnable (lwpid 84382)
>
> ==84382==    at 0x402452B: _vgnU_freeres (vg_preloaded.c:59)
>
> ==84382==    by 0x2: ???
>
>  
>
>  
>
> The valgrind version is 3.12.0
>
>  
>
> root@SZV1000161574:/usr1/code/source/test# gcc --version
>
> gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
>
> Copyright (C) 2013 Free Software Foundation, Inc.
>
> This is free software; see the source for copying conditions.  There
> is
>
>  
>
>  
>
> Does dhat support elf32 mode?
>
>  
>
> BR
>
> Owen
>
>  
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________ Valgrind-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/valgrind-users



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Valgrind-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/valgrind-users
Loading...