[PATCH 1/4] ntoskrnl.exe: Implement IoReleaseCancelSpinLock().

Zebediah Figura z.figura12 at gmail.com
Thu Jan 24 22:56:21 CST 2019


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 dlls/hal/Makefile.in          |  1 +
 dlls/ntoskrnl.exe/Makefile.in |  2 +-
 dlls/ntoskrnl.exe/ntoskrnl.c  | 10 ----------
 dlls/ntoskrnl.exe/sync.c      | 11 +++++++++++
 4 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/dlls/hal/Makefile.in b/dlls/hal/Makefile.in
index 8efaf55512..cc2620e921 100644
--- a/dlls/hal/Makefile.in
+++ b/dlls/hal/Makefile.in
@@ -1,4 +1,5 @@
 MODULE    = hal.dll
+IMPORTLIB = hal
 
 C_SRCS = \
 	hal.c
diff --git a/dlls/ntoskrnl.exe/Makefile.in b/dlls/ntoskrnl.exe/Makefile.in
index 8cafaada85..3861d26a4a 100644
--- a/dlls/ntoskrnl.exe/Makefile.in
+++ b/dlls/ntoskrnl.exe/Makefile.in
@@ -1,6 +1,6 @@
 MODULE    = ntoskrnl.exe
 IMPORTLIB = ntoskrnl
-IMPORTS   = advapi32
+IMPORTS   = advapi32 hal
 DELAYIMPORTS = setupapi user32
 
 C_SRCS = \
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index a48b9e39c2..2a061f3338 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -785,16 +785,6 @@ void WINAPI IoAcquireCancelSpinLock(PKIRQL irql)
     FIXME("(%p): stub\n", irql);
 }
 
-
-/***********************************************************************
- *           IoReleaseCancelSpinLock  (NTOSKRNL.EXE.@)
- */
-void WINAPI IoReleaseCancelSpinLock(KIRQL irql)
-{
-    FIXME("(%u): stub\n", irql);
-}
-
-
 /***********************************************************************
  *           IoAllocateDriverObjectExtension  (NTOSKRNL.EXE.@)
  */
diff --git a/dlls/ntoskrnl.exe/sync.c b/dlls/ntoskrnl.exe/sync.c
index 74e84a6505..36282fec67 100644
--- a/dlls/ntoskrnl.exe/sync.c
+++ b/dlls/ntoskrnl.exe/sync.c
@@ -413,3 +413,14 @@ KIRQL WINAPI KeAcquireSpinLockRaiseToDpc( KSPIN_LOCK *lock )
     return 0;
 }
 #endif
+
+static KSPIN_LOCK cancel_lock;
+
+/***********************************************************************
+ *           IoReleaseCancelSpinLock  (NTOSKRNL.EXE.@)
+ */
+void WINAPI IoReleaseCancelSpinLock( KIRQL irql )
+{
+    TRACE("irql %u.\n", irql);
+    KeReleaseSpinLock( &cancel_lock, irql );
+}
-- 
2.17.1




More information about the wine-devel mailing list