Agent/Wine/Mandrake 9.1 problem

Rein Klazes rklazes at
Tue May 20 08:26:05 CDT 2003


I am trying to help Alex Heney who reported problems in agent newsgroup
running Agent on his Manrdake 9.1 system.

Wine is compiled with the --with-nptl configuration switch enabled, but
we still get what looks like thread lock-ups.

Both with wine-20030408 and 20030508 Agent frequently freezes when doing
online tasks. Here is an example:

| 0012:Call kernel32.CreateThread(00000000,00002000,00573144,421db238,00000000,407120c0) ret=005731f3
| 0014:Starting thread (entryproc=0x573144)

thread with id 14 is started. It performs a few simple tasks:

| 0014:Call kernel32.SetFilePointer(000000bc,00000020,42a4271c,00000000) ret=0043eb2f
| 0014:Ret  kernel32.SetFilePointer() retval=00000020 ret=0043eb2f
| 0014:Call kernel32.SetLastError(00000000) ret=0043ed82
| 0014:Ret  kernel32.SetLastError() retval=00000000 ret=0043ed82
| 0014:Call kernel32.ReadFile(000000bc,421d7af8,00000020,42a42718,00000000) ret=0043ed97
| 0014:Ret  kernel32.ReadFile() retval=00000001 ret=0043ed97

does something on inherited file handles.

| 0014:Call kernel32.GetPrivateProfileIntA(005d5b53 "Purging",005d5b5b "PurgeOnNewHeaders",00000001,41a60d48 "C:\\Program Files\\agent\\DATA\\AGENT.INI") ret=00577677
| 0014:Ret  kernel32.GetPrivateProfileIntA() retval=00000001 ret=00577677

reads a flag from its ini file.

| 0014:Call kernel32.VirtualQuery(427e0000,42a426d0,0000001c) ret=00588d5e
| 0014:Ret  kernel32.VirtualQuery() retval=0000001c ret=00588d5e
| 0014:Call kernel32.VirtualQuery(427e0000,42a426c8,0000001c) ret=00588d5e
| 0014:Ret  kernel32.VirtualQuery() retval=0000001c ret=00588d5e
| 0014:Call kernel32.VirtualFree(427e0000,00010000,00004000) ret=00588bd7
| 0014:Ret  kernel32.VirtualFree() retval=00000001 ret=00588bd7
| 0014:Call kernel32.VirtualFree(427e0000,00000000,00008000) ret=00588be8
| 0014:Ret  kernel32.VirtualFree() retval=00000001 ret=00588be8

does some virtual queries.

| 0014:Call user32.PostMessageA(00040023,00000411,421d1000,00000000) ret=0046c56d
| 0014:Call kernel32.GetTickCount() ret=408865f9
| 0014:Ret  kernel32.GetTickCount() retval=004f7151 ret=408865f9
| 0014:Ret  user32.PostMessageA() retval=00000001 ret=0046c56d

post a message to the main window.

| 0014:Call kernel32.ExitThread(00000000) ret=0057326c

And it is done, after some unloading call from this thread the log stops
and no other threads resume.  

On my (non nptl) system I do see a "Ret CreateThread" from the calling
thread long before the subthread exits. 

For completeness: Alex reported this to happen only when he connects to
his local newsserver on "localhost", not when using that of his ISP. I
cannot find anything suspicious about this in the relaylog, so it is
probably a timing issue. 

Any suggestions how to debug this?

Full +relay,+winsock log on

Rein Klazes
rklazes at

More information about the wine-devel mailing list