Finding cause of heap corruption

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Wed May 22 06:14:02 CDT 2002


Hallo,

trying to run xilinx webpack, after some time a crash happens. 
I suspect a heap corruption and running with --debugmsg +heap I see quite
early 

  133191 098347d0:Call kernel32.TlsGetValue(00000004) ret=6c371018
  133192 trace:heap:RtlAllocateHeap (415d0000,00000002,00000018): returning 415e9068
  133193 098347d0:Ret  kernel32.TlsGetValue() retval=4037bdf0 ret=6c371018
  133194 09830f78:Ret  ntdll.RtlAllocateHeap() retval=415e9068 ret=41595068
  133195 098347d0:Call user32.GetParent(00010022) ret=6c371331
  133196 09830f78:Call ntdll.RtlAllocateHeap(415d0000,00000000,0000000e) ret=41595068
  133197 098347d0:Ret  user32.GetParent() retval=00000000 ret=6c371331
  133198 trace:heap:RtlAllocateHeap (415d0000,00000002,00000018): returning 415e9088
  133199 098347d0:Call user32.TranslateMessage(0040735c) ret=6c3711c7
  133200 09830f78:Ret  ntdll.RtlAllocateHeap() retval=415e9088 ret=41595068
  133201 098347d0:Ret  user32.TranslateMessage() retval=00000000 ret=6c3711c7
  133202 098347d0:Call user32.DispatchMessageA(0040735c) ret=6c3711ce
  133203 09830f78:Call ntdll.RtlAllocateHeap(415d0000,00000000,00000016) ret=41595068
  133204 warn:heap:HEAP_ValidateInUseArena Heap 40d30000: invalid in-use arena magic for 40d30656
  133205 Heap: 40d30000

"invalid in-use arena magic" is an indicator for a corrupy heap. Right?

On each RtlAllocateHeap(), the heap is checked. As the call to
RtlAllocateHeap() on line 133196 succeeds, the trashing must have happend
between line 133201 and 133203. Right?

Thnaks for any help.


-- 
Uwe Bonnes                bon at elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------



More information about the wine-devel mailing list