https://git.reactos.org/?p=reactos.git;a=commitdiff;h=25a5aee86f43e9f526d4d360e4e4f35feb9d22b4

commit 25a5aee86f43e9f526d4d360e4e4f35feb9d22b4
Author:     Thomas Faber <[email protected]>
AuthorDate: Sat Feb 22 12:31:54 2020 +0100
Commit:     Thomas Faber <[email protected]>
CommitDate: Mon Apr 6 11:13:55 2020 +0200

    [NTOS:MM] Get rid of unnecessary MmZeroingPageThreadActive.
---
 ntoskrnl/mm/ARM3/miarm.h    | 1 -
 ntoskrnl/mm/ARM3/mminit.c   | 5 ++---
 ntoskrnl/mm/ARM3/pfnlist.c  | 3 +--
 ntoskrnl/mm/ARM3/zeropage.c | 3 +--
 4 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/ntoskrnl/mm/ARM3/miarm.h b/ntoskrnl/mm/ARM3/miarm.h
index c242b795af6..9d85c42afff 100644
--- a/ntoskrnl/mm/ARM3/miarm.h
+++ b/ntoskrnl/mm/ARM3/miarm.h
@@ -639,7 +639,6 @@ extern PMMPDE MiHighestUserPde;
 extern PFN_NUMBER MmSystemPageDirectory[PPE_PER_PAGE];
 extern PMMPTE MmSharedUserDataPte;
 extern LIST_ENTRY MmProcessList;
-extern BOOLEAN MmZeroingPageThreadActive;
 extern KEVENT MmZeroingPageEvent;
 extern ULONG MmSystemPageColor;
 extern ULONG MmProcessColorSeed;
diff --git a/ntoskrnl/mm/ARM3/mminit.c b/ntoskrnl/mm/ARM3/mminit.c
index 7cd7af10838..d72e7186193 100644
--- a/ntoskrnl/mm/ARM3/mminit.c
+++ b/ntoskrnl/mm/ARM3/mminit.c
@@ -2181,9 +2181,8 @@ MmArmInitSystem(IN ULONG Phase,
         /* Initialize the Loader Lock */
         KeInitializeMutant(&MmSystemLoadLock, FALSE);
 
-        /* Set the zero page event */
-        KeInitializeEvent(&MmZeroingPageEvent, SynchronizationEvent, FALSE);
-        MmZeroingPageThreadActive = FALSE;
+        /* Set up the zero page event */
+        KeInitializeEvent(&MmZeroingPageEvent, NotificationEvent, FALSE);
 
         /* Initialize the dead stack S-LIST */
         InitializeSListHead(&MmDeadStackSListHead);
diff --git a/ntoskrnl/mm/ARM3/pfnlist.c b/ntoskrnl/mm/ARM3/pfnlist.c
index eac3a043418..f175541a500 100644
--- a/ntoskrnl/mm/ARM3/pfnlist.c
+++ b/ntoskrnl/mm/ARM3/pfnlist.c
@@ -701,10 +701,9 @@ MiInsertPageInFreeList(IN PFN_NUMBER PageFrameIndex)
     ColorTable->Count++;
 
     /* Notify zero page thread if enough pages are on the free list now */
-    if ((ListHead->Total >= 8) && !(MmZeroingPageThreadActive))
+    if (ListHead->Total >= 8)
     {
         /* Set the event */
-        MmZeroingPageThreadActive = TRUE;
         KeSetEvent(&MmZeroingPageEvent, IO_NO_INCREMENT, FALSE);
     }
 
diff --git a/ntoskrnl/mm/ARM3/zeropage.c b/ntoskrnl/mm/ARM3/zeropage.c
index 6d859f6806f..5fe22294199 100644
--- a/ntoskrnl/mm/ARM3/zeropage.c
+++ b/ntoskrnl/mm/ARM3/zeropage.c
@@ -17,7 +17,6 @@
 
 /* GLOBALS 
********************************************************************/
 
-BOOLEAN MmZeroingPageThreadActive;
 KEVENT MmZeroingPageEvent;
 
 /* PRIVATE FUNCTIONS 
**********************************************************/
@@ -73,7 +72,7 @@ MmZeroPageThread(VOID)
         {
             if (!MmFreePageListHead.Total)
             {
-                MmZeroingPageThreadActive = FALSE;
+                KeClearEvent(&MmZeroingPageEvent);
                 MiReleasePfnLock(OldIrql);
                 break;
             }

Reply via email to