Alexandre Julliard
a8ddcf7dfe
ntdll: Use syscalls for a couple of Wine internal functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 19:31:43 +02:00
Alexandre Julliard
af1a328fa0
ntdll: Use syscalls for the Wine version functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 19:31:43 +02:00
Alexandre Julliard
482b64effd
ntdll: Use syscalls for the file path conversion functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:57:19 +02:00
Alexandre Julliard
4e5811637a
ntdll: Use syscalls for the server functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:55:40 +02:00
Martin Storsjo
a12e308eba
ntdll/tests: Add a larger testcase covering most arm64 unwinding opcodes.
...
These all seem to be implemented correctly as no changes to the
wine implementation is needed.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:34:31 +02:00
Martin Storsjo
bc3284f818
ntdll: Implement the arm64 machine frame and context unwind opcodes.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:34:31 +02:00
Martin Storsjo
41d1fd3229
ntdll/tests: Support testing float registers in the arm64 virtual unwind test.
...
Only testing d0-d15, not d16-d31, for keeping the test references
a bit smaller.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:34:31 +02:00
Martin Storsjo
8c0c70dd0f
ntdll/tests: Add defines for the complete set of arm64 unwidning opcodes.
...
Also correct the previous definition of UWOP_NOP which was a typo
(but it wasn't used in any testcase yet).
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:21:07 +02:00
Martin Storsjo
a729af0e9c
ntdll: Set handler_data correctly in arm64 RtlVirtualUnwind.
...
This matches what tests show is done on actual windows, in the
current testcases; in all currently tested cases, handler_data is
reset to NULL when no handler is returned.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-25 13:21:01 +02:00
Zebediah Figura
aaea13a128
server: Report named pipe device files as type "File".
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Arkadiusz Hiler
9012096b47
Revert "ntdll/tests: Add test to check if GetTickCount is updated after sleeping.".
...
This reverts commit 4617f83fcf
.
The assumption that GetTickCount() gets updated after Sleep(1) holds only
when there is no other software running on the system. If any program uses
timeBeginPeriod() with values 1-15 then this assumption breaks.
A lot of common user software calls timeBeginPeriod() - this includes browsers,
media players, voice communicators, IDEs and store fronts.
Signed-off-by: Arkadiusz Hiler <ahiler@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Alexandre Julliard
97847eeee8
ntdll: Avoid referencing winecrt0 exception handlers from the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Alexandre Julliard
6844ff8a0b
ntdll: Stop resolving imports for the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 22:14:44 +02:00
Alexandre Julliard
0b3db9dfa2
ntdll: Handle page faults happening during a syscall without dispatching the exception.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 11:46:22 +02:00
Zebediah Figura
8bd95a80f2
ntdll: Read the condition variable and manipulate the lock on the PE side.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49712
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 11:17:04 +02:00
Paul Gofman
057e7f1940
ntdll: Also save unwind info for rbp in call_consolidate_callback() on x64.
...
Fixes Bloons TD 6 crash on start.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 11:16:40 +02:00
Martin Storsjo
32c618b7c5
ntdll: Add initial tests for arm64 RtlVirtualUnwind.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-24 11:16:03 +02:00
Paul Gofman
601175822e
ntdll: Restore AVX registers in NtSetContextThread() on i386.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 16:54:39 +02:00
Paul Gofman
9aa885bf37
ntdll: Support AVX context in fault exceptions on Linux i386.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 16:54:38 +02:00
Paul Gofman
2c3719c7a9
ntdll: Restore AVX registers in NtSetContextThread() on x86_64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 16:54:38 +02:00
Paul Gofman
16ed88a952
ntdll: Support AVX context in fault exceptions on Linux x86_64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 16:54:38 +02:00
Paul Gofman
3f562e0b91
ntdll/tests: Add test for xstate in extended context.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:36:49 +02:00
Martin Storsjo
5b3842451b
include: Update ARM64 context flag definitions to match current SDKs.
...
CONTEXT_FLOATING_POINT should be included in CONTEXT_FULL, and
there's a new flag CONTEXT_ARM64_X18 (not available without
the arch specific prefix) that only is part of CONTEXT_ALL.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-21 15:01:56 +02:00
Paul Gofman
a4af2b2b70
kernel32: Implement GetEnabledXStateFeatures().
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 21:14:15 +02:00
Paul Gofman
97b5ad7597
wineboot: Initialize XState features in user_shared_data.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:50:02 +02:00
Paul Gofman
de1cb029f6
include: Define _XSAVE_FORMAT structure.
...
The structure is defined for both x86_64 and i386 (along with
M128A) in (newer) Windows SDK.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:49:38 +02:00
Paul Gofman
25d4c50db3
ntdll: Remove redundant ldmxcsr in set_full_cpu_context() on x86_64.
...
Mxcsr will be overwritten anyway by consequent fxrstor.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:49:26 +02:00
Alexandre Julliard
77fbf3a9fd
ntdll: Unwind the syscall frame in NtSetContextThread().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:45:53 +02:00
Alexandre Julliard
a686759f1d
ntdll: Unwind the syscall frame when calling KiUserApcDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:45:53 +02:00
Alexandre Julliard
53e0bf2f9f
ntdll: Don't expect LdrInitializeThunk() to return to the Unix side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:45:53 +02:00
Alexandre Julliard
4a7cd0f492
ntdll: Call NtContinue() from LdrInitializeThunk() instead of returning.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:23:44 +02:00
Paul Gofman
f332f2e4e2
ntdll: Don't transfer xmm registers explicitly during context save and restore on x64.
...
fxsave / fxrstor already do that.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 10:16:57 +02:00
Paul Gofman
525e7078a8
ntdll: Report newer vector processor features on x86 / x64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-19 10:15:45 +02:00
Martin Storsjo
8f3bd63b52
ntdll: Fix arm64 sigcontext access for darwin.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 22:33:39 +02:00
Martin Storsjo
7f8224411c
ntdll: Fix the arm64 use of libunwind for macOS.
...
MacOS uses the LLVM libunwind, which doesn't expose quite as much
internals of the cursor as GNU libunwind, and uses slightly different
names for the arch specific register enums (for get/set registers).
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 22:33:34 +02:00
Martin Storsjo
cffd06ea67
ntdll: Trust libunwind's returned pc value on arm64.
...
Use this instead of manually copying LR to PC. With GNU libunwind,
both registers are equal after unw_step.
With the LLVM libunwind (which Apple uses), the return address isn't
reflected at all in LR, only in UNW_REG_IP.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-18 22:32:27 +02:00
Serge Gautherie
743ed29af5
winapi_test: Update generated.c files.
...
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:04:03 +02:00
Martin Storsjo
e8f2c2464a
ntdll: Only call putenv() if we are going to call exec().
...
If we aren't going to exec (if pre_exec() returns zero), we will
continue using the envp pointer we got from the caller. However,
the putenv() call does update the environment, and this can in
some cases overwrite the array that the old (stale, potentially
dangling) envp pointer points to.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:04:02 +02:00
Martin Storsjo
00b4a51fcc
ntdll: Remove a stray duplicate instruction.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Paul Gofman
71090bdc2f
ntdll: Don't mind epilog in RtlVirtualUnwind() in case of zero op count on x64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Paul Gofman
ae07938ba6
ntdll: Support nested exceptions on x64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-14 22:02:04 +02:00
Paul Gofman
c76dc32fef
ntdll: Fix unwind from call_consolidate_callback() for PE build on x64.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49698
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:28:32 +02:00
Paul Gofman
76556bc588
ntdll: Support UWOP_PUSH_MACHFRAME opcode in RtlVirtualUnwind() on x64.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:27:03 +02:00
Paul Gofman
d4052e0d70
ntdll/tests: Always remove hook trampoline in test_kiuserexceptiondispatcher().
...
As it is not removed by the hook itself if the hook is not called in the last
test.
Fixes test failures on Win 2003.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 12:26:34 +02:00
Rémi Bernon
26c078a2a6
ntdll/tests: Run RtlRaiseException tests on x86_64.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 11:04:40 +02:00
Rémi Bernon
94ee270972
ntdll/tests: Add broken FltSave results for w2008 / w8.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 11:00:46 +02:00
Rémi Bernon
f804d1ac70
ntdll/tests: Fix w2008 debugger test results.
...
Changing Eip has an effect there, so offset it just a little bit so that
it still falls within code.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-12 11:00:42 +02:00
Brendan Shanks
fd80e0300c
ntdll: Pad HEAP structure so 'flags' offset matches recent Windows.
...
Needed for Red Dead Redemption 2 to pass anti-debugger checks, it
accesses 'flags' and 'force_flags' at a fixed offset of the ProcessHeap.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49666
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 18:20:20 +02:00
Alexandre Julliard
9b7f14f1b4
ntdll: Unwind the syscall frame when calling KiRaiseUserExceptionDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 17:56:10 +02:00
Alexandre Julliard
1e7e21534e
ntdll: Unwind the syscall frame when calling KiUserExceptionDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 17:56:10 +02:00
Alexandre Julliard
13abe9e2bd
ntdll/tests: Run exception tests under the debugger on all platforms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-11 17:56:10 +02:00
Serge Gautherie
99c0ab2ea1
winapi_test: Restore horizontal alignment of macro defines.
...
Signed-off-by: Serge Gautherie <winehq-git_serge_180711@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:26:15 +02:00
Serge Gautherie
c26d7470cc
winapi_test: Horizontally align TEST_TYPE_SIGNED() parameter.
...
Signed-off-by: Serge Gautherie <reactos-git_serge_171003@gautherie.fr>
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-10 21:25:56 +02:00
Alexandre Julliard
7a71f98640
ntdll: Use KiUserApcDispatcher() to call user APCs.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 19:31:24 +02:00
Alexandre Julliard
2a08e0e290
ntdll: Implement KiUserApcDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 19:31:06 +02:00
Mikołaj Zalewski
9014dae8fb
ntdll: Return from Thumb to ARM mode after assembling raise_func_trampoline_thumb.
...
Without it, Raspbian gcc thinks the next function
(raise_func_trampoline_arm) is in Thumb and will create its own
trampoline to to execute it as Thumb (bad).
Signed-off-by: Mikołaj Zalewski <mikolaj@zalewski.pl>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 11:39:48 +02:00
Daniel Lehman
93fa2e0ab8
ntdll/tests: Handle 32 cores.
...
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-06 11:38:48 +02:00
Brendan Shanks
f7895ef25a
ntdll: Generate "system boot information" SMBIOS table.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 22:52:03 +02:00
Brendan Shanks
734a7120b6
ntdll: Add additional fields to generated SMBIOS chassis info table.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 22:52:00 +02:00
Brendan Shanks
d29c33a35c
ntdll: Add additional fields to generated SMBIOS baseboard info table.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 22:51:57 +02:00
Alexandre Julliard
1d3e3a1c8d
ntdll: Avoid importing RtlEnterCriticalSection/RtlLeaveCriticalSection from the Unix side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-05 15:28:31 +02:00
Brendan Shanks
2b76b9f234
ntdll: End generated SMBIOS tables with the end-of-table structure.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 22:08:13 +02:00
Brendan Shanks
0720c6cfd0
ntdll: Use unique handle numbers in generated SMBIOS tables.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 22:08:11 +02:00
Jacek Caban
b59bf31f61
ntdll: Move InterlockedCompareExchange128 support to winnt.h.
...
Also properly declare intrinsic on msvc.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 20:22:38 +02:00
Evgeny Litvinenko
69f1b12a30
ntdll: Add check for totalram, mem_unit in struct sysinfo.
...
Signed-off-by: Evgeny Litvinenko <evgeny.v.litvinenko@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 15:52:15 +02:00
Alexandre Julliard
2c903e9e9b
ntdll: Move the critical section fallback code out of the Unix library.
...
This partially reverts commit ff19f21913
.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 15:52:15 +02:00
Alexandre Julliard
647c54e539
ntdll: Fix wcsncpy() implementation now that length is unsigned.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49206
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 13:00:53 +02:00
Zebediah Figura
31800a1414
server: Use a separate object for each opened mailslot device file.
...
This is essentially a straight port of 2600ecd4ed
.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-03 10:20:03 +02:00
Zebediah Figura
f4e5556547
ntdll/tests: Add more tests for object names.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-01 10:02:16 +02:00
Zebediah Figura
b7e51a1653
ntdll: Append ntdll.dll to the builtin_modules list.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49626
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-29 21:28:31 +02:00
Zebediah Figura
3f8d60e2ac
ntdll: Compare builtins by their device and inode number directly.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-29 21:27:49 +02:00
Alexandre Julliard
eee92591bc
ntdll/tests: Add thread context test for ARM platforms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 14:16:53 +02:00
Alexandre Julliard
06c09fca31
ntdll/tests: Add tests for RtlCaptureContext() and NtGetContextThread() on x86_64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 14:13:48 +02:00
Alexandre Julliard
8e5c11b964
ntdll/tests: Enable more exception tests on ARM platforms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 14:13:48 +02:00
Alexandre Julliard
94ca95a6d4
ntdll/tests: Fix vectored exception handler usage.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 14:13:48 +02:00
Alexandre Julliard
d775b9fd93
ntdll: Reimplement RtlRaiseException() to build a correct context on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:51:44 +02:00
Alexandre Julliard
57f419993e
ntdll: Use a syscall thunk for NtGetContextThread().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:51:44 +02:00
Alexandre Julliard
15b3584603
winebuild: Store the syscall frame in the thread data on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:35:30 +02:00
Alexandre Julliard
28e443d9e2
winebuild: Store the syscall frame in the thread data on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:31:59 +02:00
Alexandre Julliard
9a7c56d9e7
winebuild: Store the syscall frame in the thread data on x86_64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:10:28 +02:00
Alexandre Julliard
8e3b5183cc
winebuild: Store the syscall frame in the thread data on i386.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-28 13:00:50 +02:00
Matteo Bruni
b37371bf20
ntdll: Don't read current CPU frequency on Linux.
...
On the Linux boxes I tested, reading scaling_cur_freq usually takes
about 12 ms per core.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47128
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Alexandre Julliard
d18b566995
ntdll: Store the filesystem redirection flag in the 64-bit TEB.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Alexandre Julliard
a865a4f61d
ntdll: Allocate 64-bit TEB and PEB in WoW64 mode.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Alexandre Julliard
e3b059b5ba
ntdll: Store the thread startup info in the ntdll_thread_data structure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-24 18:26:18 +02:00
Alexandre Julliard
0bf52b09f2
ntdll: Update the TEB and PEB structures for newer Windows versions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 23:21:08 +02:00
Alexandre Julliard
9018a37735
ntdll: Call virtual_set_large_address_space() directly from the Unix side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 14:38:40 +02:00
Alexandre Julliard
131e53a1fc
ntdll: Avoid private Unix functions in RtlCreateUserStack().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 14:38:40 +02:00
Alexandre Julliard
1372d8fc2c
ntdll: Implement NtSetInformationProcess(ProcessThreadStackAllocation).
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 14:22:16 +02:00
Alexandre Julliard
d41b1c28c3
ntdll: Avoid private Unix functions in RtlExitUserThread().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-22 14:22:16 +02:00
Alexandre Julliard
78c772e9d8
ntdll: Use a syscall thunk for NtQueryPerformanceCounter().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 18:30:08 +02:00
Alexandre Julliard
4752e252ea
ntdll: Use a syscall thunk for NtClose().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 18:30:08 +02:00
Alexandre Julliard
5eefbc6db9
ntdll: Implement KiRaiseUserExceptionDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 18:30:08 +02:00
Alexandre Julliard
688799b1f7
ntdll: Map errno to a status also in directory functions.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49523
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 18:30:08 +02:00
Alexandre Julliard
f8d42a31c6
ntdll: Set a better exit status when the main image fails to load.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49593
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-21 15:23:28 +02:00
Alexandre Julliard
9def213de3
ntdll: Move the locale system calls to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 20:14:41 +02:00
Alexandre Julliard
0e45f7b4cd
ntdll: Move various stub functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 20:14:41 +02:00
Alexandre Julliard
f298db7254
ntdll: Move the security system calls to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 20:14:18 +02:00
Alexandre Julliard
dd77ff754b
ntdll: Move the token functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 17:58:12 +02:00
Alexandre Julliard
a47f4daf8f
ntdll: Move the LPC port syscall stubs to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 17:58:12 +02:00
Zebediah Figura
ff9ce43c01
ntdll/tests: Make info.c less verbose by default.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:47:36 +02:00
Zebediah Figura
17785690c0
ntdll/tests: Remove some unnecessary checks in test_query_logicalprocex().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:47:34 +02:00
Zebediah Figura
9dd1eaab44
ntdll/tests: Return early if ThreadHideFromDebugger isn't supported.
...
We're not testing anything interesting in this case.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:47:29 +02:00
Zebediah Figura
519f86d5aa
ntdll/tests: Remove todo_wine for tests that now succeed.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:47:26 +02:00
Zebediah Figura
8ac77cfbf9
ntdll/tests: Remove some workarounds for no longer supported versions of Windows.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:47:22 +02:00
Gerald Pfeifer
f3ca16379d
ntdll: Include <signal.h> for sigset_t.
...
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:46:20 +02:00
Alexandre Julliard
b1af31b47a
ntdll: Fix a memory leak.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-20 11:45:58 +02:00
Jacek Caban
180f7cf412
ntdll: Always use GNU _CI* functions implementation on clang.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:52 +02:00
Alexandre Julliard
e0a2f85b78
ntdll: Move some power stub functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
e7c60141d6
ntdll: Move some timer stub functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
398cfe4807
ntdll: Move some system stub functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
0eae5d3abc
ntdll: Move the atom system calls to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
76e48978a9
ntdll: Move more object manager functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
28bf959c5c
ntdll: Move the remaining file functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Alexandre Julliard
7053b7c615
ntdll: Move the registry system calls to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Zebediah Figura
de1eaee480
ntdll/tests: Fix a copy-paste error.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 11:00:57 +02:00
Zebediah Figura
2a53947028
ntdll/tests: Use wide character string literals in om.c.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 11:00:55 +02:00
Zebediah Figura
5e240cdf50
ntdll/tests: Convert DIR_TEST_CREATE_OPEN into a function.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 11:00:53 +02:00
Zebediah Figura
d7e12831b0
ntdll/tests: Remove some workarounds for no longer supported versions of Windows.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 11:00:52 +02:00
Paul Gofman
2aa58e43a0
ntdll/tests: Test KiUserExceptionDispatcher with RtlUnwind on i386.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Paul Gofman
12dba1b2ae
ntdll: Fix PE unwind info for %rsi, %rdi in KiUserExceptionDispatcher.
...
Fixes StarCraft crash on start.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Zebediah Figura
77e74fb1db
ntdll: Implement NtMakeTemporaryObject().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
0534beb331
ntdll: Use syscall thunks for object manager functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
40d403c926
ntdll: Use syscall thunks for system functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
e3e477e6a1
ntdll: Use syscall thunks for virtual memory functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
3b4c2ffb7b
ntdll: Use syscall thunks for file functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
635e914bde
ntdll: Use syscall thunks for process functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
00e7d50f8b
ntdll: Use syscall thunks for thread functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
c5f66fc784
ntdll: Use syscall thunks for I/O completion functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
eb45a75a2e
ntdll: Use syscall thunks for keyed event functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
9f8acda167
ntdll: Use syscall thunks for wait functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
aa08e15415
ntdll: Use syscall thunks for timer functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
66e6d87ab8
ntdll: Use syscall thunks for job functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
3f51cb6304
ntdll: Use syscall thunks for mutex functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
f4c403d1f2
ntdll: Use syscall thunks for event functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
bc2164e074
ntdll: Use syscall thunks for semaphore functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Alexandre Julliard
14994715e9
ntdll: Avoid buffer underflow in find_dos_device().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00
Jacek Caban
42cb7d2ad1
ntdll: Silence server_ioctl_file debug traces.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 22:57:57 +02:00
Alexandre Julliard
704d0662be
ntdll: Fix RtlSizeHeap() error value for 64-bit.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 16:33:02 +02:00
Alexandre Julliard
82dc024a35
ntdll: Use separate handlers for SIGSEGV/SIGILL/SIGBUS on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 16:33:02 +02:00
Alexandre Julliard
7b79532448
ntdll: Send debug event before pushing exception data on x86_64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 15:22:36 +02:00
Alexandre Julliard
3889c374a1
ntdll: Send debug event before pushing exception data on x86.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 15:22:36 +02:00
Alexandre Julliard
ae15a4ca5a
ntdll: Send debug event before pushing exception data on ARM64.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 15:22:30 +02:00
Alexandre Julliard
adb4e74b47
ntdll: Send debug event before pushing exception data on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:36:23 +02:00
Alexandre Julliard
1e4865ffcf
ntdll: Handle signals on the signal stack also on ARM.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:34:18 +02:00
Alexandre Julliard
485c8566f1
ntdll: Build the exception record on the signal stack first.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:31:19 +02:00
Alexandre Julliard
ca45eda758
ntdll: Add a helper function to push the exception data to the thread stack.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:30:45 +02:00
Alexandre Julliard
9a9fb47e24
ntdll: Also handle stack guard page faults in virtual_handle_fault().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:29:50 +02:00
Alexandre Julliard
f1e4c54104
ntdll: Add a helper function to grow the stack on guard page faults.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:28:57 +02:00
Alexandre Julliard
432d504118
ntdll: Pass the stack address to the virtual_handle_fault() function.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-15 10:28:26 +02:00