valgrind for WINE

Alexandre Julliard julliard at
Wed Apr 2 11:27:57 CST 2003

Adam Gundy <arg at> writes:

> which part of the signal stuff won't work? all that has happened is that the
> "kill( <pid>, SIGUSR1 )" has moved from the wineserver to the client (for 'local'
> threads). I thought that the NPTL stuff still wanted a PID-per-thread model
> just so it can do this?

No you can't use kill, you have to use pthread_kill, but then it will
break the non NPTL case. And on Solaris you have to do some lwp stuff
instead. Basically there is quite a bit of complexity that the server
takes care of that you would have to replicate in the client.

> OTOH if you can *really* switch to a pure pthreads model, that should be no problem
> since valgrind comes with a pthread library...

Pure pthreads is not possible, we need to support inter-process
signals and things like that.

> as to making valgrind use real threads, I think that is a BIG job, and unlikely
> to happen, since the only thing that wants 'real' threads is WINE - everything
> else is happy with pthreads.

Well, sending a signal to a thread from another process is standard
Linux functionality, so I'd argue that valgrind should support it one
way or another.

Alexandre Julliard
julliard at

More information about the wine-devel mailing list