And internally rename the ntoskrnl.exe export.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com ---
v2: Use a static inline KeInitializeSpinLock, as it's apparently not exported on 64bit W7.
Reoder patches, tweak removal CS usage in winebus.sys.
dlls/ntoskrnl.exe/ntoskrnl.exe.spec | 2 +- dlls/ntoskrnl.exe/sync.c | 2 +- include/ddk/wdm.h | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec index 5fdaa922f45..9bea60817b3 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.exe.spec +++ b/dlls/ntoskrnl.exe/ntoskrnl.exe.spec @@ -575,7 +575,7 @@ @ stdcall KeInitializeMutex(ptr long) @ stub KeInitializeQueue @ stdcall KeInitializeSemaphore(ptr long long) -@ stdcall KeInitializeSpinLock(ptr) +@ stdcall KeInitializeSpinLock(ptr) NTOSKRNL_KeInitializeSpinLock @ stdcall KeInitializeTimer(ptr) @ stdcall KeInitializeTimerEx(ptr long) @ stub KeInsertByKeyDeviceQueue diff --git a/dlls/ntoskrnl.exe/sync.c b/dlls/ntoskrnl.exe/sync.c index 445c8d890ab..2751032f13d 100644 --- a/dlls/ntoskrnl.exe/sync.c +++ b/dlls/ntoskrnl.exe/sync.c @@ -523,7 +523,7 @@ NTSTATUS WINAPI KeDelayExecutionThread( KPROCESSOR_MODE mode, BOOLEAN alertable, /*********************************************************************** * KeInitializeSpinLock (NTOSKRNL.EXE.@) */ -void WINAPI KeInitializeSpinLock( KSPIN_LOCK *lock ) +void WINAPI NTOSKRNL_KeInitializeSpinLock( KSPIN_LOCK *lock ) { TRACE("lock %p.\n", lock); *lock = 0; diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h index 447833c4bc9..ca369c22d09 100644 --- a/include/ddk/wdm.h +++ b/include/ddk/wdm.h @@ -1754,7 +1754,10 @@ void WINAPI KeInitializeDpc(KDPC*,PKDEFERRED_ROUTINE,void*); void WINAPI KeInitializeEvent(PRKEVENT,EVENT_TYPE,BOOLEAN); void WINAPI KeInitializeMutex(PRKMUTEX,ULONG); void WINAPI KeInitializeSemaphore(PRKSEMAPHORE,LONG,LONG); -void WINAPI KeInitializeSpinLock(KSPIN_LOCK*); +static FORCEINLINE void WINAPI KeInitializeSpinLock( KSPIN_LOCK *lock ) +{ + *lock = 0; +} void WINAPI KeInitializeTimerEx(PKTIMER,TIMER_TYPE); void WINAPI KeInitializeTimer(KTIMER*); void WINAPI KeLeaveCriticalRegion(void);