Alexandre Julliard
33937344a0
ntdll: Fix heap validation when large heap blocks are present.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-12 21:18:18 +01:00
Francois Gouget
ca577af1bc
ntdll: S/4Gb/4GB/ in a comment since it refers to bytes.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-21 19:01:10 +01:00
Michael Stefaniuc
724c216d18
ntdll: Remove useless cast to self.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-12 09:32:02 +02:00
Rémi Bernon
00451d5edf
ntdll: Clarify NtAllocateVirtualMemory zero_bits parameter semantics.
...
This parameter was misinterpreted as an alignment parameter for the
lower bits of the allocated memory region, although it is a constraint
on the higher bits.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 20:55:35 +02:00
Alexandre Julliard
a184ce483b
ntdll: Avoid using DPRINTF().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:34:09 +02:00
Alex Henrie
bca3ec9fd9
ntdll: Add DECLSPEC_HOTPATCH to functions patched by libtcmalloc.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45199
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 20:59:38 +02:00
Michael Stefaniuc
10f23ddb58
ntdll: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 10:15:59 +02:00
Huw Davies
2175852f5a
ntdll: Add free list buckets for every arena size up to 0x100.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 19:52:29 +02:00
Thomas Faller
a0b8f178df
ntdll: Fix valgrind heap realloc notifications.
...
Valgrind can't handle a realloc if the new size is zero.
Signed-off-by: Thomas Faller <tfaller1@gmx.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 21:55:26 +01:00
Francois Gouget
ca1545cf17
ntdll: Remove unneeded NONAMELESSXXX directives.
2015-03-16 15:04:50 +09:00
Sergey Kalinichev
7eed378f5d
ntdll: Add stub for RtlSetHeapInformation.
2014-12-19 22:36:17 +01:00
Alexandre Julliard
395df1aa2d
ntdll: Heap handles should be 64K-aligned.
2014-03-26 11:24:30 +01:00
Alexandre Julliard
90e90e3b6a
ntdll: Make the page_size variable global.
2013-01-08 16:35:30 +01:00
Dan Kegel
9af12506b0
ntdll: Avoid clobbering valgrind annotations during HeapReAlloc.
2012-06-11 11:26:43 +02:00
Maarten Lankhorst
d9889cfd63
ntdll: Use VALGRIND_RESIZEINPLACE_BLOCK when available.
2011-11-15 11:46:02 +01:00
Marcus Meissner
cfd5bfa86e
ntdll: Avoid shadowing size variable.
2011-10-20 12:59:30 +02:00
Bart Van Assche
c0913ed064
ntdll: Fix race condition in RtlCreateHeap().
2011-03-29 12:37:26 +02:00
Alexandre Julliard
6a9f170b1c
ntdll: Round up the initial commit size to the commit granularity.
2010-06-29 10:55:20 +02:00
Mikhail Maroukhine
2b8f11b8c0
ntdll: Fix compiler warnings with flag -Wcast-qual.
2010-03-29 12:15:28 +02:00
Eric Pouech
10642e76db
ntdll: Fix wrong marking for valgrind on 64bit systems.
2010-02-22 11:50:08 +01:00
Dan Kegel
20430f6ede
ntdll: Fix large block realloc annotation.
2010-02-02 11:47:20 +01:00
Alexandre Julliard
156d66ec24
ntdll: Avoid reporting a freed block twice to Valgrind.
2010-02-01 12:35:32 +01:00
Alexandre Julliard
7ffb1c102e
ntdll: Fix the various heap debug checks for 64-bit.
2010-01-29 13:28:57 +01:00
Alexandre Julliard
0692bfda5f
ntdll: Don't require heap sizes to be 64K aligned.
2010-01-28 19:47:01 +01:00
Alexandre Julliard
b7b8929f0b
ntdll: Support delayed freeing of heap blocks to catch use-after-free bugs.
2010-01-28 19:43:38 +01:00
Alexandre Julliard
a75ae7936e
ntdll: Disable debug flags when running on Valgrind.
...
The extra debug checks cause more harm than good under Valgrind.
2010-01-28 19:42:48 +01:00
Alexandre Julliard
90f31aa381
ntdll: Always enable tail checking when running under Valgrind.
2010-01-27 18:46:08 +01:00
Alexandre Julliard
31aa3900e4
ntdll: Add 8 more bytes to the block tail when tail checking is enabled.
2010-01-27 18:46:07 +01:00
Alexandre Julliard
d387a34d96
ntdll: Simplify the checking of heap pointers when debugging is not enabled.
2010-01-27 18:46:07 +01:00
Alexandre Julliard
bf975d1f85
ntdll: Verify the tail contents when validating a large block.
2010-01-26 16:08:22 +01:00
Alexandre Julliard
aa409c75f9
ntdll: Fill the tail of existing large blocks when the debug flags change.
2010-01-26 16:06:59 +01:00
Alexandre Julliard
dedabe9d54
ntdll: Fill the tail of large blocks too for tail checking.
2010-01-26 16:04:45 +01:00
Alexandre Julliard
cb2a5f7ef9
ntdll: Move alloc notification closer to the allocation for large blocks.
2010-01-26 16:03:07 +01:00
Alexandre Julliard
6864777a10
ntdll: Verify free block contents when validating the heap.
2010-01-26 14:35:08 +01:00
Alexandre Julliard
c0abf594f8
ntdll: Verify the tail contents when validating an in-use block with tail checking enabled.
2010-01-26 14:34:31 +01:00
Alexandre Julliard
a192695099
ntdll: Fill existing tail and free blocks when the debug flags are changed after heap creation.
2010-01-26 14:31:22 +01:00
Alexandre Julliard
c15660054f
ntdll: Use the same value as Windows for filling free heap blocks.
2010-01-26 14:30:25 +01:00
Alexandre Julliard
5cd254d729
ntdll: Fill the tail of heap blocks when HEAP_TAIL_CHECKING_ENABLED is set.
2010-01-26 14:29:51 +01:00
Alexandre Julliard
aa9c7b070e
ntdll: Use the heap flags instead of debug channels to test for enabled debug features.
2010-01-25 15:02:31 +01:00
Alexandre Julliard
9055e9e3dd
ntdll: Set the heap debug flags based on the GlobalFlag value.
2010-01-22 12:33:03 +01:00
Dmitry Timoshkov
27ebfdb879
kernel32: Implement HeapQueryInformation, add some basic tests for it.
2009-10-12 12:48:03 +02:00
Alexandre Julliard
7f64b8a9a9
ntdll: Don't switch from small to large block when HEAP_REALLOC_IN_PLACE_ONLY is specified.
2009-08-05 20:35:36 +02:00
Alexandre Julliard
5f23006441
ntdll: Go back to growing the heap in smaller increments once we start running out of address space.
2009-06-30 14:07:18 +02:00
Alexandre Julliard
c03991be68
ntdll: Large heap blocks don't need to be 64k aligned.
2009-06-30 14:06:55 +02:00
Alexandre Julliard
c68594a941
ntdll: Don't try to decommit a heap past its initial commit size.
2009-06-25 14:33:31 +02:00
Alexandre Julliard
476324e8ba
ntdll: Compute the free lists address at run-time instead of playing with alignment and padding.
2009-06-25 14:33:15 +02:00
Alexandre Julliard
13a33b73c3
ntdll: Free old memory block when reallocating to a large block.
2009-05-18 12:12:12 +02:00
Dan Kegel
3e6d0789d0
ntdll: Add missing RtlReAllocateHeap Valgrind hook, add tests.
2009-04-27 13:22:49 +02:00
Dan Kegel
999bb6a0e9
ntdll: Add missing valgrind hook in RtlAllocateHeap.
2009-04-16 11:28:53 -05:00
Michael Stefaniuc
d2f6f56873
ntdll: Remove superfluous pointer casts.
2009-03-23 12:40:53 +01:00