I sent this message before but I dont think it reached the list.
I am trying to make the debugger work on Solaris.
The wineserver and debugger currently co-operate using ptrace to debug a client app, but on solaris the debugger deadlocks. It was previously thought that this was due to the threading model on Solaris which is different. (Different threads don't have different pids). The ptrace manual says that a client must call ptrace(PTRACE_TRACEME...) before it can be debugged but grepping the Wine source can find no useful references to TRACEME.
Without calling ptrace (TRACEME,...) Solaris returns ESRCH even though the process exists which causes the wineserver to assume the process is defunct and delete the app, apparently causing the deadlock (This deadlock will have to be fixed too !).
Can anyone enlighten me as to what gotchas there are in fixing this since I don't know much about Linux behaviour (Though the linux ptrace mentions PTRACE_TRACEME too but apparently doesn't enforce it !)
Bob