Commit Graph

310 Commits

Author SHA1 Message Date
Alexandre Julliard 556bc03758 ntoskrnl.exe: Specify fastcall entry points using the appropriate spec file flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-28 21:37:29 +01:00
Huw Davies d88f129507 ntoskrnl.exe: Add stubs for PsSuspendProcess() and PsResumeProcess().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-27 22:21:17 +01:00
Jacek Caban 637e01e217 ntoskrnl.exe: Implement file object constructor.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban 855314449b ntoskrnl.exe: Implement ObReferenceObject and ObDereferenceObject.
NULL checks are meant to prevent regressions in applications trying to
reference NULL objects returned from stubs.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban ad7c1392ce ntoskrnl.exe: Add partial ObReferenceObjectByHandle implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban 916c5f2edb ntoskrnl.exe: Use kernel object allocators for file object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban 7fb89b126d ntoskrnl.exe: Add missing ObReferenceObject call to ObReferenceObjectByName.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban d01cd45b55 ntoskrnl.exe: Use kernel object allocators for device object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban bb94d94bb0 ntoskrnl.exe: Introduce common kernel object allocator and use it for driver object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban 38eebddc1d ntoskrnl.exe: Export object type values.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 15:01:01 +01:00
Jacek Caban 6b50fa3161 ntoskrnl.exe: Add PsReferenceProcessFilePointer stub.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 21:18:14 +01:00
Michael Müller 88b20b2dee ntoskrnl.exe: Implement NtBuildNumber.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 12:54:15 +01:00
Jacek Caban 4498648ec1 ntoskrnl.exe: Add KeRevertToUserAffinityThread stub.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 12:53:46 +01:00
Jacek Caban 38c825598f ntoskrnl.exe: Set FileObject of IRP passed to driver callbacks.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=20083
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 12:53:40 +01:00
Jacek Caban 7bacd8530f ntoskrnl.exe: Implement ExDeleteNPagedLookasideList.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Michael Müller 7529e74516 ntoskrnl.exe: Implement ExInitializeNPagedLookasideList.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Jacek Caban 7149ae1111 ntoskrnl.exe: Add PsRevertToSelf stub.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Jacek Caban 2401d86f68 ntoskrnl.exe: Properly export *SList functions on win64.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45820
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-05 10:20:59 +01:00
Jacek Caban 5bfbcb735b ntoskrnl.exe: Implement KeExpandKernelStackAndCallout and KeExpandKernelStackAndCalloutEx.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-04 15:43:01 +01:00
Jacek Caban 80c23190f8 ntoskrnl.exe: Add KeEnterGuardedRegion and KeLeaveGuardedRegion stubs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-31 18:13:18 +01:00
Zebediah Figura e3856fd630 ntoskrnl.exe: Implement APC-level fast mutex functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-30 18:33:35 +01:00
Zebediah Figura 10dcc10a55 ntoskrnl.exe: Implement plain queued spinlock functions on top of DPC-level ones.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-29 17:12:13 +01:00
Zebediah Figura 08ba44618d ntoskrnl.exe: Implement PsTerminateSystemThread().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 12:00:50 +01:00
Zebediah Figura 171bf1e2a0 ntoskrnl.exe: Implement ExInterlockedRemoveHeadList().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 12:00:50 +01:00
Zebediah Figura 834db73121 ntoskrnl.exe: Implement IoAcquireCancelSpinLock().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 11:55:54 +01:00
Zebediah Figura e834d38c77 ntoskrnl.exe: Implement IoReleaseCancelSpinLock().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 11:55:51 +01:00
Zebediah Figura fee112f90a ntoskrnl.exe: Implement KeAcquireSpinLockRaiseToDpc().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 20:46:15 +01:00
Zebediah Figura 55463d4aa8 ntoskrnl.exe: Implement KeReleaseSpinLock().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 20:26:50 +01:00
Zebediah Figura 92b047e722 ntoskrnl.exe: Implement KeInitializeSpinLock().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 20:26:01 +01:00
Zebediah Figura 48504a2cc7 ntoskrnl.exe: Properly handle already-loaded drivers in handle_bus_relations().
This fixes a regression introduced by d498780294.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46469
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-15 14:30:00 +01:00
Józef Kucia ff6eadc6ae ntoskrnl.exe: Fix service handle leak in ZwLoadDriver() (Coverity).
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-08 09:29:13 -06:00
Zebediah Figura d498780294 ntoskrnl.exe: Handle already-loaded drivers in handle_bus_relations().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-24 20:12:21 +01:00
Zebediah Figura e3ad1cff73 ntoskrnl.exe: Avoid loading a driver multiple times in ZwLoadDriver().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45805
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-24 20:12:16 +01:00
Michael Stefaniuc 7a43ea94ee ntoskrnl.exe: Drop the WINE_ prefix from debug functions.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-05 22:33:43 +01:00
Alex Henrie 2e758ea86c ntoskrnl.exe: Make several string constants static.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-30 19:36:51 +01:00
Zebediah Figura c00a322d97 ntoskrnl.exe: Implement KeDelayExecutionThread().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 09:35:12 +01:00
Zebediah Figura 55778f4d8a ntoskrnl.exe: Implement KeSetTimerEx() and waiting on timers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 09:34:58 +01:00
Zebediah Figura bbed1bdd47 ntoskrnl.exe: Implement KeInitializeTimerEx().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 09:34:32 +01:00
Zebediah Figura b9e556d5e8 ntoskrnl.exe: Implement KeClearEvent().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:59:58 +01:00
Zebediah Figura af0c6b5cae ntoskrnl.exe: Implement KeWaitForMutexObject().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:59:53 +01:00
Zebediah Figura 1aaabb781b ntoskrnl.exe: Implement KeReleaseMutex() and waiting on mutexes.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:59:49 +01:00
Zebediah Figura e3223f30aa ntoskrnl.exe: Implement KeInitializeMutex().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:59:17 +01:00
Zebediah Figura 4824d7217b ntoskrnl.exe: Implement KeReleaseSemaphore() and waiting on semaphores.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:59:12 +01:00
Zebediah Figura 8589d094ff ntoskrnl.exe: Implement KeInitializeSemaphore().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-27 08:58:51 +01:00
Zebediah Figura 05b278675f ntoskrnl.exe: Implement KeWaitForSingleObject().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 13:27:28 +01:00
Zebediah Figura 6345787cf4 ntoskrnl.exe: Implement KeResetEvent().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 13:27:25 +01:00
Zebediah Figura 469c2fd4d7 ntoskrnl.exe: Implement KeSetEvent().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 13:27:13 +01:00
Zebediah Figura a29204cb13 ntoskrnl.exe: Implement KeInitializeEvent().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 13:26:39 +01:00
Zebediah Figura d3b2517c88 ntoskrnl.exe: Implement KeWaitForMultipleObjects().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 13:26:37 +01:00
Aric Stewart 73e448820b ntoskrnl.exe: Create the device interface symlink in IoSetDeviceInterfaceState().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-20 16:57:21 +01:00