Alexandre Julliard
44c9758d05
ntdll: Move private data to make room in the TEB for the activation context data.
2007-07-19 16:56:10 +02:00
Andrew Talbot
e3708a60b4
ntdll: Constify some variables.
2007-06-28 11:00:53 +02:00
Dmitry Timoshkov
e142779b09
ntdll: Fix compilation warnings in 64-bit mode.
2007-05-23 13:10:20 +02:00
Francois Gouget
820d954095
ntdll: Fix compilation on systems that don't support nameless unions.
2007-05-21 12:38:54 +02:00
Alexandre Julliard
5aa70b3d80
ntdll: Setup the shared user data structure at 0x7ffe0000.
2007-05-18 18:09:03 +02:00
Alexandre Julliard
aaf477f292
server: Change the timeout handling to use NT-style 64-bit timeouts everywhere.
2007-04-17 20:08:59 +02:00
Alexandre Julliard
42050fbf91
ntdll: Fixed typo in previous patch, spotted by Ken Thomases.
2007-03-14 15:02:22 +01:00
Alexandre Julliard
7744443feb
ntdll: Add a wrapper to call the thread entry point for broken apps.
2007-03-14 12:28:38 +01:00
Alexandre Julliard
8025f79ce1
ntdll: Implementation of inter-process RtlCreateUserThread.
2007-01-18 15:02:55 +01:00
Alexandre Julliard
7a383cf83f
ntdll: Abuse RtlCreateUserThread to call the thread function for CreateThread directly.
2007-01-18 15:02:11 +01:00
Alexandre Julliard
21d631e270
ntdll: Move the LDT section to ntdll and make it an uninterruptible section.
2007-01-18 15:01:45 +01:00
Alexandre Julliard
8891d6de48
ntdll: Block async signals during process init and thread creation.
2007-01-18 12:23:04 +01:00
Alexandre Julliard
fb75c66897
ntdll: Avoid heap allocations during thread creation.
2007-01-18 12:20:10 +01:00
Joel Parker
2319999a05
Remove redundant semicolons for ANSI compatibility.
2007-01-17 11:58:15 +01:00
Alexandre Julliard
6ca1d1b081
server: Support queuing some APCs to a process instead of a thread.
2007-01-15 22:26:32 +01:00
Andrew Talbot
16cb898600
ntdll: Remove unused function.
2007-01-15 14:23:04 +01:00
Alexandre Julliard
5c8421d3e7
server: Add a generic apc_call structure to make it easier to extend, and more type-safe.
2007-01-04 13:40:09 +01:00
Eric Pouech
5b1f3b14ca
ntdll: Fixed returned status for NtQueryThreadInformation's ThreadDescriptorTable
...
(spotted by Peter Oberndorfer).
2006-11-15 11:24:41 +01:00
Eric Pouech
8cb932ea89
ntdll: Implemented AmILastThread information class for NtQueryInformationThread.
2006-10-03 20:20:13 +02:00
Alexandre Julliard
530e765035
include: Exception filters should return LONG, not DWORD.
...
Also move UnhandledExceptionFilter definitions to winbase.h since they
are there in the latest SDK.
2006-09-20 11:26:59 +02:00
Alexandre Julliard
3095a48d6f
server: Convert thread creation/exit times to the abs_time_t type.
2006-07-26 14:49:55 +02:00
Alexandre Julliard
6c9ade0529
ntdll: Allocate the PEB with NtAllocateVirtualMemory too.
2006-07-24 15:19:32 +02:00
Alexandre Julliard
0c453bc7c6
ntdll: Use NtAllocateVirtualMemory to allocate all TEBs except the first one.
2006-07-21 20:20:30 +02:00
Pierre d'Herbemont
6d0e51fb66
ntdll: Fix NtQueryInformationThread on non x86.
2006-06-09 21:08:14 +02:00
Eric Pouech
2d3504c309
ntdll/kernel32: Moved GetThreadSelectorEntry to ntdll.
...
- implemented NtQueryInformationThread's ThreadDescriptorTableEntry
information class
- used it to implement the kernel32's equivalent (GetThreadSelectorEntry)
2006-05-27 13:00:19 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Michael Stefaniuc
7a8818e717
Don't check pointers for NULL before RtlFreeHeap. It is redundant.
2006-05-05 20:59:50 +02:00
Alexandre Julliard
d2ad6f8355
ntdll: Get registers on the client side for NtGetContextThread on the current thread.
2006-04-20 15:40:28 +02:00
Juan Lang
fced68672f
ntdll: Initialize a variable.
...
Fix an uninitialized pointer in RtlCreateUserThread, caught by
coverity.
2006-04-11 11:23:49 +02:00
Robert Shearman
ea6f3a4cc0
ntdll: Move the call to MODULE_DllThreadAttach from the kernel32
...
thread creation function to the NTDLL one.
2006-03-14 17:50:28 +01:00
Alexandre Julliard
477b3bf566
kernel: Moved the get_startup_info call to ntdll.
2006-02-22 09:57:19 +01:00
Alexandre Julliard
a19e3eeb20
ntdll: Move the TEB register to the ntdll_thread_regs structure.
2006-01-20 16:18:06 +01:00
Alexandre Julliard
2878d99216
ntdll: Add debug registers to the context of all exceptions.
...
Maintain a local cache of the debug registers to avoid server calls
where possible.
2006-01-13 13:58:14 +01:00
Alexandre Julliard
2654be08d5
ntdll: Handle NtSetContextThread on the client side (as far as
...
possible) when setting the context of the current thread.
2006-01-11 20:20:32 +01:00
Eric Pouech
329ab98940
ntdll: Implemented ntdll.NtSetInformationThread(ThreadAffinityMask).
...
Reimplemented kernel32.SetThreadAffinityMask on top of it.
2006-01-11 12:32:19 +01:00
Alexandre Julliard
efffa66330
ntdll: Don't use a real guard page at the bottom of the stack.
...
A no-access page is enough, we can't properly raise an overflow
exception anyway.
2005-12-17 18:47:03 +01:00
Alexandre Julliard
f3dad37ba2
TEB.StackLimit should not include the guard page.
2005-12-12 17:28:32 +01:00
Alexandre Julliard
d02c4a1b82
Make wine_server_fd_to_handle use attributes instead of inherit flag.
2005-12-09 12:22:35 +01:00
Alexandre Julliard
f2d7dd645e
server: Use attributes instead of inherit flag in process and thread requests.
2005-12-09 12:13:11 +01:00
Ge van Geldorp
1a1583a364
Match PSDK STATUS_* definitions.
2005-11-28 17:32:54 +01:00
Eric Pouech
63e5d5e5b9
Init wShowWindow in RTL_USER_PARAMETERS for Wine processes started
...
from the command-line.
2005-11-14 11:21:13 +00:00
Kevin Koltzau
079e7cac17
x86_64 references a named union, ensure unions are not nameless.
2005-11-05 10:43:50 +00:00
Vitaliy Margolen
4e76f91f1a
Get rid of CPU id when copying context
2005-11-03 09:54:47 +00:00
Alexandre Julliard
73c72390f8
Fixed Get/SetThreadContext to work properly on suspended threads.
...
Added a test case.
2005-11-02 20:54:12 +00:00
Alexandre Julliard
d6f7adb367
Don't send the incoming context to the server for get_thread_context,
...
instead copy only the relevant fields of the return value on the
client side.
2005-11-01 21:41:26 +00:00
Alexandre Julliard
fb9cead92b
Support arbitrary sizes for the thread signal stack, and set the
...
default size from the MINSIGSTKSZ constant.
2005-09-14 10:36:58 +00:00
Eric Pouech
ad0168967e
Implemented kernel32.GetThreadTimes on top of ntdll's equivalent
...
function.
2005-09-12 22:01:33 +00:00
Alexandre Julliard
884599112e
Use SIZE_T instead of ULONG for the size arguments of the virtual
...
memory functions.
2005-09-12 10:36:06 +00:00
Eric Pouech
60cae6e289
Implemented kernel32:SetThreadPriority on top of ntdll's equivalent
...
functions.
2005-09-07 13:25:35 +00:00
Alexandre Julliard
883d3c52d3
Use explicit function pointers for pthread support instead of relying
...
on ELF symbol overriding.
2005-09-03 15:11:29 +00:00
Alexandre Julliard
a5156dcf40
Added a stub for NtAlertResumeThread.
2005-08-18 11:47:17 +00:00
Alexandre Julliard
9f32a5c865
Added a VIRTUAL_alloc_teb function to allocate TEBs while making sure
...
they don't end up above the address space limit.
2005-08-09 10:43:47 +00:00
Alexandre Julliard
4de75b5a6f
Use the new RtlExitUserThread function instead of exporting
...
wine_server_exit_thread.
2005-08-02 09:55:40 +00:00
Alexandre Julliard
3be8cb8b02
Moved initialization of the default user process parameters to ntdll.
2005-07-14 12:33:30 +00:00
Alexandre Julliard
11ad6a0ac4
Return the startup info size in the init_thread request, and allocate
...
the process parameters structure in ntdll instead of kernel.
2005-07-13 19:43:35 +00:00
Alexandre Julliard
60b3d30f9b
Don't require execute permission for thread stacks.
2005-06-21 09:57:53 +00:00
Robert Shearman
4bba21643c
Add support for impersonating a token.
2005-06-20 13:18:38 +00:00
Alexandre Julliard
811e966083
The TEB doesn't need execute permissions.
2005-06-17 12:15:44 +00:00
Alexandre Julliard
ab29aa2126
Moved the ntdll per-thread data out of the TEB into a private
...
structure stored in TEB.SystemReserved2.
2005-06-06 20:04:33 +00:00
Alexandre Julliard
9b57a950d7
Avoid accessing the htask16 TEB field from ntdll.
2005-06-05 18:24:35 +00:00
Alexandre Julliard
86be9f20da
Removed the MESSAGEQUEUE structure, and store the corresponding
...
information directly in the TEB, in the Win32ClientInfo field.
2005-04-27 08:18:20 +00:00
Alexandre Julliard
f1020bc6e0
Added support for the TLS expansion slots, adding an extra 1024
...
entries.
2005-03-19 17:14:12 +00:00
Ivan Leo Puoti
d3edafe1e2
Replace GetCurrentProcess() with NtCurrentProcess() in ntdll.
2005-02-22 19:33:50 +00:00
Robert Shearman
2050591370
Fix NtAllocateVirtualMemory declaration and fix users of the
...
function.
2004-10-11 20:59:06 +00:00
Alexander Yaworsky
8657ad8704
Make RtlCreateUserThread fail if process handle is not for the current
...
process.
2004-09-21 00:23:50 +00:00
Francois Gouget
61d21ce706
Update RTL_BITMAP and RTL_BITMAP_RUN to match the 2000 DDK.
...
Only test the Rtl{Initialize,SetAll,ClearAll}Bits macros if they are
defined.
2004-08-23 18:52:54 +00:00
Mike McCormack
edf55ec7d9
Implement SetThreadToken using NtSetInformationThread.
2004-08-13 23:20:27 +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
Patrik Stridvall
070db4e5de
Fixed some issues found by winapi_check.
2004-05-17 21:08:31 +00:00
Alexandre Julliard
a45931c6f3
Get rid of the TEB flags, they are no longer used.
2004-04-15 05:04:53 +00:00
Alexandre Julliard
4fac95df3d
Fixed a couple of race conditions in the wine_pthread routines at
...
thread startup and exit.
2004-02-05 02:01:35 +00:00
Alexandre Julliard
af542075e7
Don't use constructors for ntdll and kernel32 initialization.
2004-01-07 04:50:11 +00:00
Alexandre Julliard
6281d82e87
Store the thread entry point in the startup info passed to the new
...
thread instead of the TEB.
2003-11-25 03:42:05 +00:00
Alexandre Julliard
746d900b04
Force minimum stack size to 1Mb for Xlib.
2003-11-18 00:14:17 +00:00
Alexandre Julliard
50fba7ffec
Moved the remaining SYSDEPS_* functions to the wine_pthread interface.
...
Let the pthread library allocate the stack itself.
2003-11-09 01:25:23 +00:00
Alexandre Julliard
4dba172e55
Added server_abort_thread to replace SYSDEPS_AbortThread.
...
Removed no longer used SIGNAL_Block and SIGNAL_Reset.
Moved some internal ntdll definitions to ntdll_misc.h.
2003-11-06 00:08:05 +00:00
Alexandre Julliard
8574412e1e
Added wine_pthread_create_thread and wine_pthread_exit_thread to the
...
pthread support, and removed the corresponding SYSDEPS functions.
Moved stack allocation for new threads to wine_pthread_create_thread
to allow more flexibility.
2003-11-05 23:31:11 +00:00
Alexandre Julliard
7924f421e9
Allocate the TEB and signal stack separately from the main stack.
...
Dynamically allocate the initial TEB too so that it is properly
page-aligned.
2003-11-04 04:50:18 +00:00
Alexandre Julliard
7370f60120
Implemented RtlCreateUserThread, and use it to move thread creation to
...
ntdll.
2003-10-31 00:16:20 +00:00
Alexandre Julliard
5cb5aa6346
Use the Rtl bitmap functions to implement Tls allocation.
...
Get rid of the PDB structure.
2003-10-09 19:58:56 +00:00
Alexandre Julliard
20e73d739a
Moved the constructor for the initial TEB to ntdll so that it runs as
...
early as possible on startup.
2003-10-09 04:59:03 +00:00
Alexandre Julliard
2eb5d8b9b1
On TlsFree, clear the released TLS index in all threads.
2003-09-08 19:02:01 +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
7df1b9e03a
Start using the exported TEB structure from winternl.h where
...
possible.
2003-08-28 19:57:35 +00:00
Alexandre Julliard
4f196ead13
Implemented the ThreadBasicInformation case for
...
NtQueryInformationThread.
2003-07-09 02:57:57 +00:00
Alexandre Julliard
088bcf9ca5
Implemented NtQueueApcThread, and changed the server APC interface to
...
always take 3 parameters.
Implemented a number of other ntdll thread functions, and use them
from the kernel ones.
2003-04-04 22:26:34 +00:00