Commit Graph

67 Commits

Author SHA1 Message Date
Grazvydas Ignotas 2cc56f379c server: Set debug enable bits briefly to commit the addresses to kernel. 2011-07-18 16:23:30 +02:00
Grazvydas Ignotas fa179b1c26 server: Set RW and LEN bits of DR7 before setting DR0-DR3. 2011-07-18 16:23:30 +02:00
Austin English 599afa06b7 server: Add missing checks for FreeBSD_kernel. 2011-01-17 14:26:24 +01:00
Alexandre Julliard 185f637080 server: Use the tgkill system call on all Linux platforms. 2010-12-27 12:07:16 +01:00
Alexandre Julliard 10b6d6ba4d server: Use tgkill to send signals on x86_64 too. 2010-07-28 16:28:26 +02:00
Michael Stefaniuc 5c8b44cd24 server: Simplify tkill() and remove unreachable code (Smatch). 2010-07-28 16:28:23 +02:00
Maarten Lankhorst c054b5f86d wineserver: Use syscall instead of int $0x80. 2010-07-22 10:24:45 +02:00
Alexandre Julliard 1a79912a10 server: Try to use /proc/pid/mem to read process memory since it should be faster. 2010-07-21 13:23:58 +02:00
Eric Pouech 1298f2233f server: Fix write_process_memory on Wow64. 2010-04-20 11:17:03 +02:00
Eric Pouech 9f49c6a05f server: Correctly set the DR0..7 registers on Linux for x86_64 architecture. 2010-04-08 12:28:25 +02:00
Alexandre Julliard 034c6c3e58 server: The ptrace interfaces uses longs, not ints. 2009-06-18 15:17:26 +02:00
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