http://bugs.winehq.org/show_bug.cgi?id=24164
Summary: Wine is not data-race detector friendly Product: Wine Version: 1.2 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: bart.vanassche@gmail.com
Running Wine under a data-race detector triggers huge numbers of data-race reports on Wine functions. This makes it impossible to analyze data races in application that are running under Wine with Valgrind. An example (Valgrind trunk r11292):
$ valgrind --trace-children=yes --vex-iropt-precise-memory-exns=yes --gen-suppressions=all --tool=drd --show-confl-seg=no wine notepad [ ... ] ==1331== Conflicting store by thread 1 at 0x7f00006c size 4 ==1331== at 0x476BD36: RtlEnterCriticalSection (in /usr/lib/wine/ntdll.dll.so ) ==1331== by 0x47811DC: RtlAllocateHeap (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x4B44408: scmdatabase_autostart_services (in /usr/lib/wine/servi ces.exe.so) ==1331== by 0x4B45C9E: main (in /usr/lib/wine/services.exe.so) ==1331== Allocation context: unknown. [ ... ] ==1331== Conflicting load by thread 1 at 0x7f000128 size 4 ==1331== at 0x477C80F: list_next (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x477EF7E: HEAP_FindFreeBlock (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x47812D6: RtlAllocateHeap (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x4B44408: scmdatabase_autostart_services (in /usr/lib/wine/services.exe.so) ==1331== by 0x4B45C9E: main (in /usr/lib/wine/services.exe.so) ==1331== Allocation context: unknown. [ ... ] ==1331== Conflicting load by thread 1 at 0x7f0047e0 size 4 ==1331== at 0x477C7EC: list_remove (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x478138D: RtlAllocateHeap (in /usr/lib/wine/ntdll.dll.so) ==1331== by 0x4B44408: scmdatabase_autostart_services (in /usr/lib/wine/services.exe.so) ==1331== by 0x4B45C9E: main (in /usr/lib/wine/services.exe.so) ==1331== Allocation context: unknown. [ ... ]