[PATCH] Add a stub for ExInitializeResourceLite.

crwulff (none) crwulff at cybertron.
Fri Dec 19 23:07:41 CST 2008


---
 dlls/ntoskrnl.exe/ntoskrnl.c        |   11 +++++++++++
 dlls/ntoskrnl.exe/ntoskrnl.exe.spec |    2 +-
 include/ddk/wdm.h                   |   34 ++++++++++++++++++++++++++++++++++
 3 files changed, 46 insertions(+), 1 deletions(-)

diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 0dcde06..f21cbfa 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -884,6 +884,17 @@ void WINAPI ExInitializePagedLookasideList( PPAGED_LOOKASIDE_LIST Lookaside, PAL
 
 
 /***********************************************************************
+ *           ExInitializeResourceLite	(NTOSKRNL.EXE.@)
+ */
+NTSTATUS WINAPI ExInitializeResourceLite( PERESOURCE Resource )
+{
+    FIXME( "%p: stub\n", Resource );
+
+    return STATUS_SUCCESS;
+}
+
+
+/***********************************************************************
  *           KeInitializeSpinLock   (NTOSKRNL.EXE.@)
  */
 void WINAPI KeInitializeSpinLock( PKSPIN_LOCK SpinLock )
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
index aa9961a..fae1590 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
+++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec
@@ -141,7 +141,7 @@
 @ stub ExGetSharedWaiterCount
 @ stdcall ExInitializeNPagedLookasideList(ptr ptr ptr long long long long)
 @ stdcall ExInitializePagedLookasideList(ptr ptr ptr long long long long)
-@ stub ExInitializeResourceLite
+@ stdcall ExInitializeResourceLite(ptr)
 @ stub ExInitializeZone
 @ stub ExInterlockedAddLargeInteger
 @ stub ExInterlockedAddUlong
diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
index 0fc5818..a60c9a7 100644
--- a/include/ddk/wdm.h
+++ b/include/ddk/wdm.h
@@ -94,6 +94,11 @@ typedef struct _KMUTANT {
     UCHAR ApcDisable;
 } KMUTANT, *PKMUTANT, *RESTRICTED_POINTER PRKMUTANT, KMUTEX, *PKMUTEX, *RESTRICTED_POINTER PRKMUTEX;
 
+typedef struct _KSEMAPHORE {
+    DISPATCHER_HEADER Header;
+    LONG Limit;
+} KSEMAPHORE, *PKSEMAPHORE, *RESTRICTED_POINTER PRKSEMAPHORE;
+
 typedef enum _KWAIT_REASON
 {
     Executive,
@@ -1042,6 +1047,35 @@ typedef struct _PAGED_LOOKASIDE_LIST {
     FAST_MUTEX  Obsoleted;
 } PAGED_LOOKASIDE_LIST, *PPAGED_LOOKASIDE_LIST;
 
+typedef ULONG_PTR ERESOURCE_THREAD;
+typedef ERESOURCE_THREAD *PERESOURCE_THREAD;
+
+typedef struct _OWNER_ENTRY {
+    ERESOURCE_THREAD  OwnerThread;
+    union {
+        LONG  OwnerCount;
+        ULONG  TableSize;
+    } DUMMYUNIONNAME;
+} OWNER_ENTRY, *POWER_ENTRY;
+
+typedef struct _ERESOURCE {
+    LIST_ENTRY  SystemResourcesList;
+    POWER_ENTRY  OwnerTable;
+    SHORT  ActiveCount;
+    USHORT  Flag;
+    PKSEMAPHORE  SharedWaiters;
+    PKEVENT  ExclusiveWaiters;
+    OWNER_ENTRY  OwnerThreads[2];
+    ULONG  ContentionCount;
+    USHORT  NumberOfSharedWaiters;
+    USHORT  NumberOfExclusiveWaiters;
+    union {
+        PVOID  Address;
+        ULONG_PTR  CreatorBackTraceIndex;
+    } DUMMYUNIONNAME;
+    KSPIN_LOCK  SpinLock;
+} ERESOURCE, *PERESOURCE;
+
 NTSTATUS WINAPI ObCloseHandle(IN HANDLE handle);
 
 #define IoGetCurrentIrpStackLocation(_Irp) ((_Irp)->Tail.Overlay.CurrentStackLocation)
-- 
1.5.6.3


--=-1MYoaTd+/nUDRM6XC9NW--




More information about the wine-patches mailing list