mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 05:07:15 +00:00
[NTOSKRNL] Properly align runrefs on SMP in ExInitializeRundownProtectionCacheAware()
This commit is contained in:
parent
c5db202bdc
commit
acdf74aa3b
1 changed files with 8 additions and 3 deletions
|
@ -581,7 +581,7 @@ ExInitializeRundownProtectionCacheAware(IN PEX_RUNDOWN_REF_CACHE_AWARE RunRefCac
|
||||||
{
|
{
|
||||||
PVOID Pool;
|
PVOID Pool;
|
||||||
PEX_RUNDOWN_REF RunRef;
|
PEX_RUNDOWN_REF RunRef;
|
||||||
ULONG Count, RunRefSize, Offset;
|
ULONG Count, RunRefSize, Offset, Align;
|
||||||
|
|
||||||
PAGED_CODE();
|
PAGED_CODE();
|
||||||
|
|
||||||
|
@ -601,8 +601,13 @@ ExInitializeRundownProtectionCacheAware(IN PEX_RUNDOWN_REF_CACHE_AWARE RunRefCac
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* FIXME: Properly align on SMP */
|
/* Get alignment constraint */
|
||||||
UNIMPLEMENTED;
|
Align = KeGetRecommendedSharedDataAlignment();
|
||||||
|
|
||||||
|
/* How many runrefs given the alignment? */
|
||||||
|
RunRefSize = Align;
|
||||||
|
Count = ((Size - sizeof(EX_RUNDOWN_REF_CACHE_AWARE)) / Align) - 1;
|
||||||
|
Pool = (PVOID)ALIGN_UP_BY(Pool, Align);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Initialize the structure */
|
/* Initialize the structure */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue