https://bugs.winehq.org/show_bug.cgi?id=39270
--- Comment #1 from Anastasius Focht focht@gmx.net --- Created attachment 52349 --> https://bugs.winehq.org/attachment.cgi?id=52349 mscorsvw compile worker threads live view
Hello folks,
apparently it's a matter of triggering GAC update often enough to hit it ...
With .NET Frameworks 2.x/3.x installed:
--- snip --- $ wine "c:\windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe" update --- snip ---
Another orphaned process (wpid=0x19) with one remaining thread blocking on heap lock:
--- snip ---
Wine-dbg>info process pid threads executable (all id:s are in hex) 00000014 4 'explorer.exe' 0000000e 6 'services.exe' 00000023 3 _ 'plugplay.exe' 0000001d 4 _ 'winedevice.exe' 00000012 4 _ 'mscorsvw.exe' 00000008 6 'ngen.exe' 0000005d 14 _ 'mscorsvw.exe' 00000019 1 _ 'mscorsvw.exe'
Wine-dbg>bt Backtrace:
=>0 0xf77f1c10 __kernel_vsyscall+0x10() in [vdso].so (0x00000000) 1 0xf74ecdc7 syscall+0x26() in libc.so.6 (0x00000000) 2 0x7bc4b2a4 futex_wait+0x3f(addr=0x110070, val=0, timeout=0x33f284) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:69] in ntdll (0x0033f268) 3 0x7bc4b3ae fast_wait+0x40(crit=0x110060, timeout=0x3c) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:108] in ntdll (0x0033f298) 4 0x7bc4b509 wait_semaphore+0x24(crit=0x110060, timeout=0x3c) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:229] in ntdll (0x0033f3d8) 5 0x7bc4b9ad RtlpWaitForCriticalSection+0x128(crit=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:452] in ntdll (0x0033f498) 6 0x7bc4bc88 RtlEnterCriticalSection+0xd0(crit=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:566] in ntdll (0x0033f4d8) 7 0x7bc61f10 RtlAllocateHeap+0xfd(heap=<couldn't compute location>, flags=<couldn't compute location>, size=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/heap.c:1675] in ntdll (0x0033f568) 8 0x7bc4b6bc RtlInitializeCriticalSectionEx+0xb5(crit=<couldn't compute location>, spincount=<couldn't compute location>, flags=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/critsection.c:326] in ntdll (0x0033f5b8) 9 0x7b88069c InitializeCriticalSectionEx+0x2a(crit=<couldn't compute location>, spincount=<couldn't compute location>, flags=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/kernel32/sync.c:354] in kernel32 (0x0033f5f8) 10 0x7b88062b InitializeCriticalSection+0x2c(crit=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/kernel32/sync.c:311] in kernel32 (0x0033f628) 11 0x7d9a0871 msvcrt_initialize_mlock+0x25(locknum=0x1c) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/lock.c:50] in msvcrt (0x0033f658) 12 0x7d9a0a74 _lock+0xf1(locknum=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/lock.c:102] in msvcrt (0x0033f698) 13 0x7d990ccf MSVCRT__lock_file+0x3b(file=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/file.c:1263] in msvcrt (0x0033f6c8) 14 0x7d9902cc MSVCRT_fflush+0x2f(file=0x7da05320) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/file.c:978] in msvcrt (0x0033f708) 15 0x7d990216 msvcrt_flush_all_buffers+0x54(mask=0x3) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/file.c:948] in msvcrt (0x0033f758) 16 0x7d99029a MSVCRT__flushall+0x14() [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/file.c:964] in msvcrt (0x0033f778) 17 0x7d9908f0 msvcrt_free_io+0xa() [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/file.c:1172] in msvcrt (0x0033f7a8) 18 0x7d9a0f6a DllMain+0x1a9(hinstDLL=<couldn't compute location>, fdwReason=<couldn't compute location>, lpvReserved=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/msvcrt/main.c:130] in msvcrt (0x0033f828) 19 0x7d9d5fdd __wine_spec_dll_entry+0x64(inst=<couldn't compute location>, reason=<couldn't compute location>, reserved=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/winecrt0/dll_entry.c:40] in msvcrt (0x0033f868) 20 0x7bc640aa call_dll_entry_point+0x15() in ntdll (0x0033f898) 21 0x7bc665c1 MODULE_InitDLL+0x1ea(wm=0x41fdf00, reason=0, lpReserved=0x1) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/loader.c:1091] in ntdll (0x0033f9f8) 22 0x7bc66c08 process_detach+0x88() [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/loader.c:1260] in ntdll (0x0033fa28) 23 0x7bc6a77c LdrShutdownProcess+0x5d() [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/loader.c:2702] in ntdll (0x0033fa58) 24 0x7bc6a7c0 RtlExitUserProcess+0x41(status=<couldn't compute location>) [/home/focht/projects/wine/wine.repo/src/dlls/ntdll/loader.c:2714] in ntdll (0x0033fa78) 25 0x7b872fda ExitProcess+0x11() in kernel32 (0x0033fa94) 26 0x00000000 (0x0033fa94) 27 0x79f96d9c in mscorwks (+0x126d9b) (0x0033fb2c) --- snip ---
I managed to attach a debugger fast enough to catch a long running worker that is still alive (some seconds) - unfortunately that one exited cleanly. Usually around 13-14 threads, many of them RPC workers. See attachment for reference.
Regards