valgrind wine reports:
==6476== Valgrind detected that your program requires ==6476== the following unimplemented functionality: ==6476== modify_ldt(): I (JRS) haven't investigated this yet; sorry. ==6476== This may be because the functionality is hard to implement, ==6476== or because no reasonable program would behave this way, ==6476== or because nobody has yet needed it. In any case, let me know ==6476== (jseward@acm.org) and/or try to work around the problem, if you can.
Dang. - Dan
==6476== Valgrind detected that your program requires ==6476== the following unimplemented functionality: ==6476== modify_ldt(): I (JRS) haven't investigated this yet; sorry. ==6476== This may be because the functionality is hard to implement, ==6476== or because no reasonable program would behave this way, ==6476== or because nobody has yet needed it. In any case, let me know ==6476== (jseward@acm.org) and/or try to work around the problem, if you can.
Which version of Valgrind is this ? According to the web page, 1.1.0 should support this system call : 'Specifically, valgrind can now deal with x86 segment registers, segment override prefixes and the modify_ldt system call'.
But well, for it to really be useful, we would need then also to override in Valgrind (or in Wine) all the Threading and Heap functions.
Lionel
Hello,
I have actually worked a little with Julian Steward on this problem just before 1.1.0 I actually have a build of valgrind here on my laptop with works with very simple wine applications. I remember there was one hack i had to do to the valgrind source to disable some of its sanity checking.
I could not get valgrind to work with more advanced wine programs because i kept getting
trace:seh:EXC_RtlRaiseException code=eedfade flags=1 addr=0x402e1a30
if you want to work with valgrind i will did up how i turned off the sanity checking with 1.1.0 and see if you can get it working.
-aric
Lionel Ulmer wrote:
==6476== Valgrind detected that your program requires ==6476== the following unimplemented functionality: ==6476== modify_ldt(): I (JRS) haven't investigated this yet; sorry. ==6476== This may be because the functionality is hard to implement, ==6476== or because no reasonable program would behave this way, ==6476== or because nobody has yet needed it. In any case, let me know ==6476== (jseward@acm.org) and/or try to work around the problem, if you can.
Which version of Valgrind is this ? According to the web page, 1.1.0 should support this system call : 'Specifically, valgrind can now deal with x86 segment registers, segment override prefixes and the modify_ldt system call'.
But well, for it to really be useful, we would need then also to override in Valgrind (or in Wine) all the Threading and Heap functions.
Lionel
Aric Stewart wrote:
I have actually worked a little with Julian Steward on this problem just before 1.1.0 I actually have a build of valgrind here on my laptop with works with very simple wine applications. I remember there was one hack i had to do to the valgrind source to disable some of its sanity checking.
I could not get valgrind to work with more advanced wine programs because i kept getting
trace:seh:EXC_RtlRaiseException code=eedfade flags=1 addr=0x402e1a30
if you want to work with valgrind i will did up how i turned off the sanity checking with 1.1.0 and see if you can get it working.
Yes, please do document how you got valgrind to start working with Wine! Maybe somebody bright with time on their hands will be able to solve the issue you ran into.
Thanks, Dan
Ok to get WINE to work at all i had to disable the sanity checks
here is what Julian Steward send me on how to do that.
ok here are the lines of the log.
SYSCALL-POST[2403,1] read ( 5, 0x43CA2C7C, 64 ) --> 64 SYSCALL[2403,1](175): sigprocmask ( 2, 0x43CA2BE4, 0x0 ) SYSCALL[2403,1](123): modify_ldt ( 1, 0x43CA2D4C, 16 ) SYSCALL[2403,1](192): mmap2 ( 0x1000, 1110016, 7, 34, -1, 0 )
Looks sensible to me.
--2403-- post-syscall: --2403-- probable sanity check failure for syscall number 192
how would i go about disabling that sanity check. I scanned the code for a few minutes but it was not obvious to me.
At mc_main.c:2114 make SK_(cheap_sanity_check) always return True.
This was with 1.1.0
I have a very simple test program that only contained an edit control and i had that coming up with valgrind just fine.
when i tried to valgrind Microsoft Word 2000 i had the exceptions thrown.
I am very interested in what progress people make on this. I just have not had time to go any further on it.
-aric
Dan Kegel wrote:
Aric Stewart wrote:
I have actually worked a little with Julian Steward on this problem just before 1.1.0 I actually have a build of valgrind here on my laptop with works with very simple wine applications. I remember there was one hack i had to do to the valgrind source to disable some of its sanity checking.
I could not get valgrind to work with more advanced wine programs because i kept getting
trace:seh:EXC_RtlRaiseException code=eedfade flags=1 addr=0x402e1a30
if you want to work with valgrind i will did up how i turned off the sanity checking with 1.1.0 and see if you can get it working.
Yes, please do document how you got valgrind to start working with Wine! Maybe somebody bright with time on their hands will be able to solve the issue you ran into.
Thanks, Dan