- Fixed KiExitDispatcher.
authorHartmut Birr <osexpert@googlemail.com>
Mon, 9 Jan 2006 23:54:10 +0000 (23:54 +0000)
committerHartmut Birr <osexpert@googlemail.com>
Mon, 9 Jan 2006 23:54:10 +0000 (23:54 +0000)
- Defined KeIpiGenericCall. It is necessary for the smp build.

svn path=/trunk/; revision=20759

reactos/ntoskrnl/include/internal/ke.h
reactos/ntoskrnl/ke/wait.c

index 24d91a9..74faed6 100644 (file)
@@ -56,7 +56,6 @@ extern ULONG_PTR KERNEL_BASE;
 #define KeReleaseDispatcherDatabaseLockFromDpcLevel() \
     KeReleaseSpinLockFromDpcLevel(&DispatcherDatabaseLock);
 #define KeReleaseDispatcherDatabaseLock(OldIrql) \
-    KeReleaseSpinLockFromDpcLevel(&DispatcherDatabaseLock); \
     KiExitDispatcher(OldIrql);
 #else
 #define KeInitializeDispatcher()
@@ -304,6 +303,13 @@ KiIpiSendRequest(
     ULONG IpiRequest
 );
 
+VOID   
+NTAPI   
+KeIpiGenericCall(   
+    VOID (STDCALL *WorkerRoutine)(PVOID),   
+    PVOID Argument   
+);   
+
 /* next file ***************************************************************/
 
 VOID 
index 5f9e79e..c182346 100644 (file)
@@ -844,6 +844,10 @@ KiExitDispatcher(KIRQL OldIrql)
     {
         KiDispatchThreadNoLock(Ready);
     }
+    else
+    {
+        KeReleaseDispatcherDatabaseLockFromDpcLevel();    
+    }
 
     /* Lower irql back */
     KeLowerIrql(OldIrql);