http://bugs.winehq.org/show_bug.cgi?id=21503
Summary: WINEDEBUG=+heap shows valgrind warnings in virtual_init() Product: Wine Version: 1.1.37 Platform: x86 OS/Version: Linux Status: NEW Keywords: patch, source Severity: normal Priority: P2 Component: ntdll AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
This is after Alexandre's heap commits today. It's the next bug after 21502.
Running any test under valgrind with +heap, e.g. WINEDEBUG=+heap WINETEST_WRAPPER=valgrind make atom.ok shows a warning in virtual_init():
preloader: Warning: failed to reserve range 00110000-68000000 Warning: set address range perms: large range [0x82000000, 0xbeb80000) (defined) Invalid read of size 4 at HEAP_ValidateFreeArena (heap.c:1130) by HEAP_IsRealArena (heap.c:1313) by HEAP_GetPtr (heap.c:433) by RtlAllocateHeap (heap.c:1534) by create_view (virtual.c:467) by virtual_init (virtual.c:1356) by thread_init (thread.c:203) by __wine_process_init (loader.c:2850) by wine_init (loader.c:711) by main (main.c:218) Address 0xbfc00138 is not stack'd, malloc'd or (recently) free'd
Line 1130 of heap.c is if (*ptr != ARENA_FREE_FILLER)
This is due to missing valgrind annotations in HEAP_ValidateFreeArena(); it has to grant itself access temporarily. Draft patch attached that fixes the problem.
http://bugs.winehq.org/show_bug.cgi?id=21503
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WONTFIX
--- Comment #1 from Dan Kegel dank@kegel.com 2010-01-30 12:46:17 --- Current wine disables these checks when running in valgrind, so the report is moot.
http://bugs.winehq.org/show_bug.cgi?id=21503
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #2 from Vitaliy Margolen vitaliy@kievinfo.com 2010-01-30 15:21:25 --- Closing