Module: wine Branch: master Commit: ba98574207b8f85839587a880b97eecbe34bdd3c URL: https://source.winehq.org/git/wine.git/?a=commit;h=ba98574207b8f85839587a880...
Author: Paul Gofman pgofman@codeweavers.com Date: Thu May 28 12:15:15 2020 +0300
ntoskrnl.exe: Add KeSetTimer() function.
Signed-off-by: Paul Gofman pgofman@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +- dlls/ntoskrnl.exe/sync.c | 7 +++++++ include/ddk/wdm.h | 1 + 3 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec index 331b03ba9f..dd7ff73bee 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -642,7 +642,7 @@ @ stdcall KeSetSystemAffinityThreadEx(long) @ stdcall KeSetTargetProcessorDpc(ptr long) @ stub KeSetTimeIncrement -@ stub KeSetTimer +@ stdcall KeSetTimer(ptr int64 ptr) @ stdcall KeSetTimerEx(ptr int64 long ptr) @ stub KeStackAttachProcess @ stub KeSynchronizeExecution diff --git a/dlls/ntoskrnl.exe/sync.c b/dlls/ntoskrnl.exe/sync.c index 647d427ee5..d5a635efad 100644 --- a/dlls/ntoskrnl.exe/sync.c +++ b/dlls/ntoskrnl.exe/sync.c @@ -1258,3 +1258,10 @@ void WINAPI IoReleaseRemoveLockAndWaitEx( IO_REMOVE_LOCK *lock, void *tag, ULONG else if (count > 0) KeWaitForSingleObject( &lock->Common.RemoveEvent, Executive, KernelMode, FALSE, NULL ); } + +BOOLEAN WINAPI KeSetTimer(KTIMER *timer, LARGE_INTEGER duetime, KDPC *dpc) +{ + TRACE("timer %p, duetime %I64x, dpc %p.\n", timer, duetime.QuadPart, dpc); + + return KeSetTimerEx(timer, duetime, 0, dpc); +} diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h index 9dce98516b..38a3098994 100644 --- a/include/ddk/wdm.h +++ b/include/ddk/wdm.h @@ -1720,6 +1720,7 @@ LONG WINAPI KeSetEvent(PRKEVENT,KPRIORITY,BOOLEAN); KPRIORITY WINAPI KeSetPriorityThread(PKTHREAD,KPRIORITY); void WINAPI KeSetSystemAffinityThread(KAFFINITY); KAFFINITY WINAPI KeSetSystemAffinityThreadEx(KAFFINITY affinity); +BOOLEAN WINAPI KeSetTimer(KTIMER*,LARGE_INTEGER,KDPC*); BOOLEAN WINAPI KeSetTimerEx(KTIMER*,LARGE_INTEGER,LONG,KDPC*); void WINAPI KeSignalCallDpcDone(void*); BOOLEAN WINAPI KeSignalCallDpcSynchronize(void*);