projects
/
reactos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[NTOSKRNL] Handle some more KeFeatureFlags in amd64/cpu.c and set RtlpUse16ByteSLists
[reactos.git]
/
reactos
/
dll
/
ntdll
/
ldr
/
ldrinit.c
diff --git
a/reactos/dll/ntdll/ldr/ldrinit.c
b/reactos/dll/ntdll/ldr/ldrinit.c
index
6a74ef8
..
b6422b1
100644
(file)
--- a/
reactos/dll/ntdll/ldr/ldrinit.c
+++ b/
reactos/dll/ntdll/ldr/ldrinit.c
@@
-87,6
+87,7
@@
ULONG RtlpShutdownProcessFlags; // TODO: Use it
NTSTATUS LdrPerformRelocations(PIMAGE_NT_HEADERS NTHeaders, PVOID ImageBase);
void actctx_init(void);
NTSTATUS LdrPerformRelocations(PIMAGE_NT_HEADERS NTHeaders, PVOID ImageBase);
void actctx_init(void);
+extern BOOLEAN RtlpUse16ByteSLists;
#ifdef _WIN64
#define DEFAULT_SECURITY_COOKIE 0x00002B992DDFA232ll
#ifdef _WIN64
#define DEFAULT_SECURITY_COOKIE 0x00002B992DDFA232ll
@@
-2183,6
+2184,11
@@
LdrpInit(PCONTEXT Context,
NtCurrentTeb()->RealClientId.UniqueProcess,
NtCurrentTeb()->RealClientId.UniqueThread);
NtCurrentTeb()->RealClientId.UniqueProcess,
NtCurrentTeb()->RealClientId.UniqueThread);
+#ifdef _WIN64
+ /* Set the SList header usage */
+ RtlpUse16ByteSLists = SharedUserData->ProcessorFeatures[PF_COMPARE_EXCHANGE128];
+#endif /* _WIN64 */
+
/* Check if we have a deallocation stack */
if (!Teb->DeallocationStack)
{
/* Check if we have a deallocation stack */
if (!Teb->DeallocationStack)
{