[NTOSKRNL]
authorRoel Messiant <roelmessiant@gmail.com>
Mon, 19 Sep 2011 16:52:37 +0000 (16:52 +0000)
committerRoel Messiant <roelmessiant@gmail.com>
Mon, 19 Sep 2011 16:52:37 +0000 (16:52 +0000)
commit2e6e9dd622e69cc490c5cb4e776f37a683aa6c68
treef598e212f065c70525b9af341868444f067a8780
parentcf0a380afd425f9495b8a33f426b37bcd6c88cc9
[NTOSKRNL]
- Keep APC delivery disabled while holding a Heap Lock, not just while acquiring/releasing it (Dedicated to Timo and Ged).
- Store the Heap Lock in non-paged pool, the only place where executive resources belong (Dedicated to patient people).
[RTL]
- Restructure/simplify/correct Heap and Heap Segment initialization (partially to cope with the changed Heap Lock interface).
- Restrict the location of Heap Segment headers to the base address of the Heap Segment (which frees up a whopping 60 bytes per Heap!).
- Cater for acquiring the Heap Lock exclusively or shared (the latter is only available in kernel-mode); only exclusive locking is used for now.
- Use a plain critical section to guard the Process Heap list, no reason to disguise it as a Heap Lock (saves us a handful more bytes).

svn path=/trunk/; revision=53761
reactos/dll/ntdll/rtl/libsupp.c
reactos/lib/rtl/heap.c
reactos/lib/rtl/heap.h
reactos/lib/rtl/heapdbg.c
reactos/lib/rtl/rtlp.h
reactos/ntoskrnl/rtl/libsupp.c