mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 21:52:59 +00:00
![]() * [HAL] Simplify HalpReboot() and make it portable * [NTOS:MM] Cast constant to PVOID * [BINPATCH] Fix 64 bit build * [VFDDRV] Fix 64 bit build and buffer overruns * [USBOHCI] Fix structure alignment issues * [ATL_APITEST] Fix 64 bit build * [XDK] Update unwind structures in winnt.h * [NTDLL_APITEST] Fix 64 bit build * [NTDLL_WINETEST] Fix 64 bit build * [TFTPD] Fix x64 build * [USBPORT] Fix a C_ASSERT * [DSOUND] Fix x64 build * [HAL] Remove obsolete GetPteAddress() macro |
||
---|---|---|
.. | ||
amd64 | ||
arm | ||
i386 | ||
powerpc | ||
access.c | ||
acl.c | ||
actctx.c | ||
appverifier.c | ||
assert.c | ||
atom.c | ||
avlsupp.c | ||
avltable.c | ||
bitmap.c | ||
bitmap64.c | ||
bootdata.c | ||
byteswap.c | ||
CMakeLists.txt | ||
compress.c | ||
crc32.c | ||
critical.c | ||
dbgbuffer.c | ||
debug.c | ||
dos8dot3.c | ||
encode.c | ||
env.c | ||
error.c | ||
exception.c | ||
generictable.c | ||
handle.c | ||
heap.c | ||
heap.h | ||
heapdbg.c | ||
heappage.c | ||
heapuser.c | ||
image.c | ||
interlck.c | ||
largeint.c | ||
luid.c | ||
mem.c | ||
memstream.c | ||
message.c | ||
network.c | ||
nls.c | ||
path.c | ||
ppb.c | ||
prefix.c | ||
priv.c | ||
process.c | ||
propvar.c | ||
random.c | ||
rangelist.c | ||
readme.txt | ||
registry.c | ||
res.c | ||
resource.c | ||
rtl.h | ||
rtlavl.h | ||
rtlp.h | ||
rxact.c | ||
sd.c | ||
security.c | ||
sid.c | ||
slist.c | ||
splaytree.c | ||
sysvol.c | ||
thread.c | ||
time.c | ||
timerqueue.c | ||
timezone.c | ||
trace.c | ||
unicode.c | ||
unicodeprefix.c | ||
vectoreh.c | ||
version.c | ||
wait.c | ||
workitem.c |
RTL restrictions: ExAllocatePool (and friends) must be used exclusively. RtlAllocateHeap (and friends) must NOT be used! ExAllocatePool (and friends) translate to RtlAllocateHeap (and friends) in ntdll\rtl\libsupp.c. RtlEnterCriticalSection (and friends) must be used exclusively. ExAcquireFastMutex (and friends) must NOT be used! RtlEnterCriticalSection (and friends) translate to ExAcquireFastMutex (and friends) in ntoskrnl\rtl\libsupp.c. This means that RtlEnterCriticalSection (and friends) can NOT be used recursively in RTL. The reason for choosing RtlEnterCriticalSection (and friends) over ExAcquireFastMutex (and friends) is that the FAST_MUTEX struct is smaller than the RTL_CRITICAL_SECTION struct.