Alexandre Julliard
ff19f21913
ntdll: Move the futex-based critical section implementation to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 21:23:33 +02:00
Alexandre Julliard
c0319e0eab
ntdll: Move server wait functions to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-01 22:10:28 +02:00
Alexandre Julliard
39e4b788d6
ntdll: Use the standard Interlocked* functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 15:10:04 +02:00
Jacek Caban
8701260768
ntdll: Factor out server_select.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-13 12:14:51 +02:00
Nikolay Sivov
fe0f8a150f
ntdll: Initialize critical section debug info with correct pointer value.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:08:04 +02:00
Dmitry Timoshkov
7def0f200f
ntdll: Don't allow blocking on a critical section during process termination.
...
As a result HeapLock() no longer blocks process termination since underlying
implementation uses a critical section. However this should be considered as
a minor side effect because applications shouldn't depend on this behaviour.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 13:55:55 +02:00
Jacek Caban
14206495e3
ntdll: Don't modify LockCount in RtlLeaveCriticalSection if section is not acquired.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 16:33:36 +01:00
Sebastian Lackner
7c46763ea7
ntdll: Implement RtlIsCriticalSectionLocked[ByThread].
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:34 +09:00
Daniel Lehman
27b3a5cce4
ntdll: Use the configured CriticalSection timeout in RtlpWaitForCriticalSection.
2014-09-11 19:30:42 +02:00
Alexandre Julliard
a56ffb6326
ntdll: Rename NTDLL_wait_for_multiple_objects to server_select since it's more generic now.
2013-08-26 20:36:22 +02:00
Alexandre Julliard
947e337480
server: Make signal and wait a separate select operation.
2013-08-26 20:34:28 +02:00
Alexandre Julliard
cbdc0ec72d
ntdll: Pass a select operation structure to NTDLL_wait_for_multiple_objects.
2013-08-26 20:32:19 +02:00
Alexandre Julliard
606c88a348
ntdll: Use the __NR_ names for Linux system calls.
2013-01-21 21:37:02 +01:00
Maarten Lankhorst
57493fdd8c
ntdll: Use FUTEX_PRIVATE_FLAG for critical section futexes when available.
2011-08-04 09:03:57 +02:00
Alexandre Julliard
264996a75d
ntdll: Use the futex system calls on all Linux platforms.
2010-12-27 12:01:52 +01:00
Maarten Lankhorst
e8c5e2b890
ntdll: Use syscall instead of int $0x80.
2010-07-22 10:24:48 +02:00
Jon Griffiths
1ad733e4e0
ntdll: Implement [Rtl]InitializeCriticalSectionEx.
2008-06-23 14:04:24 +02:00
Andrew Talbot
00981b580a
ntdll: Remove unneeded casts.
2008-01-14 13:10:00 +01:00
Andrew Talbot
1ebe82af65
ntdll: Remove unneeded casts.
2007-12-31 16:45:22 +01:00
Dmitry Timoshkov
e142779b09
ntdll: Fix compilation warnings in 64-bit mode.
2007-05-23 13:10:20 +02:00
Andrew Talbot
0108667754
ntdll: Replace inline static with static inline.
2007-03-17 20:03:57 +01:00
Alexandre Julliard
443a5dbd80
ntdll: Make sure that critical section waits are not interrupted.
2007-01-10 21:53:39 +01:00
Hans Leidekker
f7b0ba7aa7
ntdll: Win64 printf format warning fixes.
2006-10-18 12:35:26 +02:00
Alexandre Julliard
27c6c83e1e
ntdll: Faster critical sections on MacOS using Mach semaphores.
2006-06-27 20:14:13 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Alexandre Julliard
a5e59421f5
Use Linux futexes instead of semaphores if possible for critical
...
section waits.
2005-09-28 18:21:48 +00:00
Alexandre Julliard
43c6396e94
Use int instead of long in interlocked_* functions for 64-bit
...
compatibility.
2005-09-26 13:51:58 +00:00
Alexandre Julliard
20a1a203c6
Use a more portable scheme for storing the name of a critical
...
section.
2005-09-09 10:19:44 +00:00
Alexandre Julliard
5e787ba521
Hack to make the main heap critical section have a proper debug info
...
structure.
2005-08-03 16:03:15 +00:00
Alexandre Julliard
1ca3de36e8
Ignore high bit of spin count.
2005-07-13 11:38:08 +00:00
Mike McCormack
91b398c3aa
- use STATUS_TIMEOUT instead of WAIT_TIMEOUT
...
- add RTL_ to one more CRITICAL_SECTION_DEBUG
2005-06-25 18:31:29 +00:00
Mike McCormack
04f9f1b066
Don't include winbase.h or winerror.h when not necessary.
2005-06-21 09:52:40 +00:00
Mike McCormack
5b2d5fd758
Use HANDLE instead of HKEY in the NT API.
2005-06-17 13:58:33 +00:00
Dmitry Timoshkov
0497af09a7
Match RaiseException and EXCEPTION_RECORD to SDK definitions.
2005-02-24 13:15:36 +00:00
Robert Shearman
54de69940a
Improve documentation for critical sections.
2004-09-06 20:26:23 +00:00
Alexandre Julliard
2ed053b5a0
Take spin count into account in RtlEnterCriticalSection.
2004-06-17 23:11:08 +00:00
Alexandre Julliard
cc461324da
Store the number of processors in the PEB structure.
...
More correct support for setting critical section spin counts (based
on a patch by Robert Shearman).
2004-06-15 00:52:03 +00:00
Alexandre Julliard
fe8ead56a8
Get rid of ntdll_get_process_heap and ntdll_get_process_pmts by using
...
standard APIs instead.
2004-03-12 01:59:35 +00:00
Alexandre Julliard
e37c6e18d0
Fixed header dependencies to be fully compatible with the Windows
...
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard
52b9cedb8e
Don't try to allocate the debug info before the process heap exists.
2003-08-13 01:09:45 +00:00
Alexandre Julliard
19b6a49845
Allocate DebugInfo field for all critical sections (based on a patch
...
by Alex Pasadyn).
Get rid of the Wine-specific CRITICAL_SECTION_INIT macro.
2003-08-12 23:50:54 +00:00
Mike Hearn
25b4d10138
Add the ID of the blocking thread to the error message.
2003-06-16 19:36:22 +00:00
Alexandre Julliard
56b5e0862c
Remove the Wine-specific EXCEPTION_CRITICAL_SECTION_WAIT define.
2003-04-04 19:41:31 +00:00
Eric Pouech
14d04b608c
No longer call WaitFor*Object* from ntdll (but NtWait*Object*).
2003-04-03 23:57:11 +00:00
Jon Griffiths
cd4234aa49
Documentation updates.
2003-03-18 18:35:48 +00:00
Alexandre Julliard
ac13d2f47e
Print thread ids in traces with only 4 digits now that they are small
...
integers.
2003-02-18 23:29:47 +00:00
Marcus Meissner
f63e5b646a
Remove errno.h from files that do not need it.
2003-01-23 22:51:04 +00:00
Alexandre Julliard
69d7cb5681
Avoid calling some kernel functions.
2002-09-18 23:13:35 +00:00
Patrik Stridvall
9c1de6de30
Moved all the content of the DDK files ntdef.h and ntddk.h to
...
winternl.h.
2002-09-12 22:07:02 +00:00