Commit graph

56 commits

Author SHA1 Message Date
Alexandre Julliard
5316dd011f server: Define a generic context structure instead of using the platform-specific version. 2009-04-08 19:59:23 +02:00
Alexandre Julliard
2cf868c0be server: Move ldt_copy to the init_process_done request and make it a client_ptr_t. 2008-12-31 15:09:59 +01:00
Alexandre Julliard
8e9c156e14 server: Make the address argument for read/write_process_memory a client_ptr_t. 2008-12-30 14:11:58 +01:00
Tijl Coosemans
0c4f152ec7 server: Use thr_kill2 syscall to signal threads on FreeBSD. 2007-08-23 20:19:09 +02:00
Tijl Coosemans
60833da9f2 loader: Use thr_self syscall to get thread id on FreeBSD. 2007-08-09 15:01:04 +02:00
Andrew Talbot
b1788c8462 server: Replace inline static with static inline. 2007-03-17 20:05:05 +01:00
Alexandre Julliard
ae4ecb6c64 server: Print a trace when sending a signal to a thread. 2007-01-18 12:23:29 +01:00
Alexandre Julliard
c273498ef4 server: Implement process control using Mach primitives for Mac OS.
With help from Ken Thomases.
2006-12-29 20:38:49 +01:00
Alexandre Julliard
cd1c7fc056 server: Add hooks to support process tracing mechanisms other than ptrace. 2006-12-29 16:56:11 +01:00
Alexandre Julliard
48b74b3237 server: Split get_thread_from_pid to allow lookups by tid or pid only. 2006-12-29 16:53:33 +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
Andrew Talbot
e60c86657a server: Cast-qual warning fix. 2006-10-09 15:23:28 +02:00
Michael Stefaniuc
a624977f21 server: Fix some comparisons between signed and unsigned. 2006-07-26 11:11:04 +02:00
Alexandre Julliard
0f273c17ff server: Added data_size_t type to represent sizes in the server protocol.
Make it an unsigned int to save some space on Win64, if we need to
transfer more than 4Gb over the server pipe something is seriously
wrong.
2006-07-26 11:11:03 +02:00
Alexandre Julliard
7b767fb71c server: Try harder to find a suitable thread for read/write_process_memory. 2006-07-25 11:41:47 +02:00
Alexandre Julliard
c242c3b3f3 server: Fixed get_thread_context for x86_64. 2006-07-11 12:06:38 +02:00
Alexandre Julliard
498742ff6c server: Moved get/set_thread_context implementation to ptrace.c. 2006-06-27 21:27:47 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Alexandre Julliard
f9ff7bf4d9 server: Remove the use_ptrace variable. 2006-04-13 21:52:55 +02:00
Alexandre Julliard
7dbd1f01f2 server: Moved the tkill function to ptrace.c. 2006-04-10 21:07:21 +02:00
Alexandre Julliard
820c5927c8 server: Removed the thread attached flag, since we always detach now. 2006-04-10 20:25:22 +02:00
Alexandre Julliard
5cc97c4e0b server: Always detach from the thread when we are done with ptrace. 2006-04-10 20:21:46 +02:00
Alexandre Julliard
cb70931f67 server: Moved read/write_process_memory and get_selector_entry to ptrace.c. 2006-04-07 19:52:12 +02:00
Alexandre Julliard
3dd0b2ef64 server: Don't single step into signal handlers. 2006-04-03 21:42:42 +02:00
Eric Pouech
22357ca388 server: When possible, use tgkill instead of tkill syscall on Linux. 2006-02-14 12:24:32 +01:00
Ge van Geldorp
1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard
1b2adad892 Don't try to detach from a thread that is exiting, to avoid triggering
a kernel race condition.
2005-08-22 10:13:28 +00:00
Alexandre Julliard
9d99a04880 Added a watchdog mechanism to break out of the wait4 call in case it
didn't return properly (can happen at thread exit).
2005-08-19 14:01:43 +00:00
Alexandre Julliard
0502638ee1 Convert the per-process thread list to a standard list. 2005-03-01 10:56:18 +00:00
Alexandre Julliard
de1990f4cf Cope with wait4 being interrupted by a signal. 2003-08-21 21:35:15 +00:00
Alexandre Julliard
fcbd0da4a2 Fixed a couple of races with exiting threads in suspend_for_ptrace(). 2003-05-06 00:21:21 +00:00
Alexandre Julliard
77fde1378e Properly handle the wait4 syscall failure on kernels that don't
support the __WALL flag.
2003-04-26 02:14:02 +00:00
Alexandre Julliard
3dddc114cf Fall back to kill() if the kernel doesn't support tkill(). 2003-04-16 23:34:05 +00:00
Alexandre Julliard
9037f4bbfe Added generic signal handling mechanism based on pipes to synchronize
signals with the main poll loop.
2003-03-26 01:32:18 +00:00
Alexandre Julliard
a8497bd037 Make a distinction between the thread Unix pid and the process wide
pid for platforms that use both.
2003-03-22 21:00:09 +00:00
Alexandre Julliard
baf0a064db Attaching the debugger to a running process should work again
(reported by Eric Pouech). Misc cleanups.
2003-03-11 01:48:53 +00:00
Eric Pouech
4431e416ed Fixed typo. 2003-03-10 19:05:04 +00:00
Alexandre Julliard
d04ccb8ebe Use SIGUSR1 instead of SIGSTOP to suspend threads. 2003-03-04 22:18:43 +00:00
Alexandre Julliard
02a53c176e Added send_thread_signal() function and properly handle errors caused
by the thread having already died when we send it a signal.
Use -1 instead of 0 as invalid Unix pid value.
2003-02-25 04:17:22 +00:00
Alexandre Julliard
cf27a7fa3b Changed fd operations to take a struct fd instead of a struct object.
Removed get_file_info function from object operations.
Added get_device_id request to avoid abusing get_file_info.
2003-02-14 20:27:09 +00:00
Alexandre Julliard
91befe1d64 Made process and thread ids small integers instead of pointers. 2003-02-01 01:38:40 +00:00
Alexandre Julliard
9d80215254 A few optimizations in the process startup requests now that Winelib
apps are started differently from Unix ones.
2002-05-24 21:20:27 +00:00
Alexandre Julliard
0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Alexandre Julliard
8ba769f45f Check unix_pid again after attach. 2002-01-12 21:16:33 +00:00
Alexandre Julliard
5f258c68f3 Backed out the suspend_process_for_ptrace change.
Fixed a couple of races in ptrace code.
2001-07-14 00:50:30 +00:00
Ove Kaaven
ada7383852 Preserve the TF (Trap Flag) when continuing from a ptraced suspend. 2001-04-27 18:39:47 +00:00
Dimitrie O. Paun
2af03e45b5 Do not include sys/ptrace.h and sys/user.h unconditionally.
Other portability fixes.
2000-11-29 20:04:09 +00:00
Gerald Pfeifer
1f0123649f Add appropriate casts to caddr_t for the third parameter of ptrace(). 2000-10-17 00:25:59 +00:00
Alexandre Julliard
d3928317d6 Increment suspend count before attempting attach in suspend_for_ptrace. 2000-04-04 19:55:28 +00:00
Alexandre Julliard
12f29b5076 Have threads and processes exit more cleanly whenever possible. 2000-03-17 15:16:57 +00:00