Added patch to add stub for ntoskrnl.ExReleaseResourceForThread.

This commit is contained in:
Sebastian Lackner 2015-02-12 08:28:37 +01:00
parent a40b3e341a
commit 3f9cc193b7
5 changed files with 66 additions and 1 deletions

View File

@ -38,9 +38,10 @@ Wine. All those differences are also documented on the
Included bug fixes and improvements
===================================
**Bugfixes and features included in the next upcoming release [5]:**
**Bugfixes and features included in the next upcoming release [6]:**
* Add stub for ntoskrnl.ExAcquireResourceExclusiveLite
* Add stub for ntoskrnl.ExReleaseResourceForThread
* Avoid race-conditions in NtReadFile() operations with write watches.
* Avoid race-conditions with write watches in WS2_async_accept.
* Basic handling of write watches triggered while we're on the signal stack.

1
debian/changelog vendored
View File

@ -7,6 +7,7 @@ wine-staging (1.7.37) UNRELEASED; urgency=low
* Added patch to implement D3DXGetShaderOutputSemantics.
* Added patch to implement basic handling of write watches while we're on the signal stack.
* Added patch to add stub for ntoskrnl.ExAcquireResourceExclusiveLite.
* Added patch to add stub for ntoskrnl.ExReleaseResourceForThread.
* Removed patches for UTF7 support (accepted upstream).
* Removed patches for SIO_ADDRESS_LIST_CHANGE ioctl (accepted upstream).
-- Sebastian Lackner <sebastian@fds-team.de> Sun, 08 Feb 2015 20:29:38 +0100

View File

@ -0,0 +1,60 @@
From a918a1b97d96ccc4b19fc148141c9fdb4e3713cf Mon Sep 17 00:00:00 2001
From: Christian Costa <titan.costa@gmail.com>
Date: Wed, 11 Feb 2015 23:56:58 +0100
Subject: ntoskrnl.exe: Add stub for ExReleaseResourceForThreadLite.
---
dlls/ntoskrnl.exe/ntoskrnl.c | 10 ++++++++++
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +-
include/ddk/wdm.h | 1 +
3 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 1110559..82d9546 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -1956,6 +1956,16 @@ VOID WINAPI KeInitializeDpc(PRKDPC Dpc, PKDEFERRED_ROUTINE DeferredRoutine, PVOI
FIXME("stub\n");
}
+
+/***********************************************************************
+ * ExReleaseResourceForThreadLite (NTOSKRNL.EXE.@)
+ */
+VOID WINAPI ExReleaseResourceForThreadLite(PERESOURCE Resource, ERESOURCE_THREAD ResourceThreadId)
+{
+ FIXME("(%p, %08lx): stub\n", Resource, ResourceThreadId);
+}
+
+
/***********************************************************************
* READ_REGISTER_BUFFER_UCHAR (NTOSKRNL.EXE.@)
*/
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index 91a01fe..b1196cb 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -168,7 +168,7 @@
@ stub ExRaiseStatus
@ stub ExRegisterCallback
@ stub ExReinitializeResourceLite
-@ stub ExReleaseResourceForThreadLite
+@ stdcall ExReleaseResourceForThreadLite(ptr long)
@ stub ExSemaphoreObjectType
@ stub ExSetResourceOwnerPointer
@ stub ExSetTimerResolution
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 0d13337..6e0eaa0 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -31,6 +31,7 @@
typedef LONG KPRIORITY;
typedef ULONG_PTR KSPIN_LOCK, *PKSPIN_LOCK;
+typedef ULONG_PTR ERESOURCE_THREAD, *PERESOURCE_THREAD;
struct _KDPC;
struct _KAPC;
--
2.2.2

View File

@ -5,3 +5,4 @@ Fixes: Implement stubs for ntoskrnl.ObReferenceObjectByPointer and ntoskrnl.ObDe
Fixes: Implement stub for ntoskrnl.KeDelayExecutionThread.
Fixes: Fix wrong defition of ntoskrnl.IoReleaseCancelSpinLock function.
Fixes: Add stub for ntoskrnl.ExAcquireResourceExclusiveLite
Fixes: Add stub for ntoskrnl.ExReleaseResourceForThread

View File

@ -2373,6 +2373,7 @@ if test "$enable_ntoskrnl_Stubs" -eq 1; then
patch_apply ntoskrnl-Stubs/0009-ntoskrnl.exe-Improve-KeInitializeTimerEx-stub.patch
patch_apply ntoskrnl-Stubs/0010-ntoskrnl.exe-Fix-IoReleaseCancelSpinLock-argument.patch
patch_apply ntoskrnl-Stubs/0011-ntoskrnl.exe-Add-stub-for-ExAcquireResourceExclusive.patch
patch_apply ntoskrnl-Stubs/0012-ntoskrnl.exe-Add-stub-for-ExReleaseResourceForThread.patch
(
echo '+ { "Sebastian Lackner", "include: Remove several duplicate definitions from ntdef.h.", 1 },';
echo '+ { "Austin English", "ntoskrnl.exe: add KeWaitForMultipleObjects stub.", 1 },';
@ -2385,6 +2386,7 @@ if test "$enable_ntoskrnl_Stubs" -eq 1; then
echo '+ { "Alexander Morozov", "ntoskrnl.exe: Improve KeInitializeTimerEx stub.", 1 },';
echo '+ { "Christian Costa", "ntoskrnl.exe: Fix IoReleaseCancelSpinLock argument.", 1 },';
echo '+ { "Christian Costa", "ntoskrnl.exe: Add stub for ExAcquireResourceExclusiveLite.", 1 },';
echo '+ { "Christian Costa", "ntoskrnl.exe: Add stub for ExReleaseResourceForThreadLite.", 1 },';
) >> "$patchlist"
fi