X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fntoskrnl%2Finclude%2Finternal%2Fke.h;h=9c8a49ac060bfb2f491371128440402818ff314b;hp=30bf212a7857f7d5b8b2e5e6ec3e3897a3740970;hb=444bb36f82eb5a55ea68668166c10f65428de24b;hpb=f881f51fdf6c71520cda99567864fe850c0d6101 diff --git a/reactos/ntoskrnl/include/internal/ke.h b/reactos/ntoskrnl/include/internal/ke.h index 30bf212a785..9c8a49ac060 100644 --- a/reactos/ntoskrnl/include/internal/ke.h +++ b/reactos/ntoskrnl/include/internal/ke.h @@ -51,6 +51,7 @@ extern ULONG_PTR KERNEL_BASE; #ifndef CONFIG_SMP #define KeInitializeDispatcher() #define KeAcquireDispatcherDatabaseLock() KeRaiseIrqlToDpcLevel(); +#define KeReleaseDispatcherDatabaseLock(OldIrql) KiExitDispatcher(OldIrql); #define KeAcquireDispatcherDatabaseLockAtDpcLevel() #define KeReleaseDispatcherDatabaseLockFromDpcLevel() #else @@ -60,6 +61,9 @@ extern ULONG_PTR KERNEL_BASE; KeAcquireSpinLockAtDpcLevel (&DispatcherDatabaseLock); #define KeReleaseDispatcherDatabaseLockFromDpcLevel() \ KeReleaseSpinLockFromDpcLevel(&DispatcherDatabaseLock); +#define KeReleaseDispatcherDatabaseLock(OldIrql) \ + KeReleaseSpinLockFromDpcLevel(&DispatcherDatabaseLock); \ + KiExitDispatcher(OldIrql); #endif /* The following macro initializes a dispatcher object's header */ @@ -259,6 +263,10 @@ VOID STDCALL KiAdjustQuantumThread(IN PKTHREAD Thread); +VOID +FASTCALL +KiExitDispatcher(KIRQL OldIrql); + /* gmutex.c ********************************************************************/ VOID @@ -386,10 +394,6 @@ KiExpireTimers( PVOID SystemArgument2 ); -VOID -FASTCALL -KeReleaseDispatcherDatabaseLock(KIRQL Irql); - VOID STDCALL KeInitializeThread(