GDB (xrefs)
Functions | Variables
linux-ptrace.c File Reference
#include "common-defs.h"
#include "linux-ptrace.h"
#include "linux-procfs.h"
#include "linux-waitpid.h"
#include "buffer.h"
#include "gdb_wait.h"

Go to the source code of this file.

Functions

void linux_ptrace_attach_fail_reason (pid_t pid, struct buffer *buffer)
 
char * linux_ptrace_attach_fail_reason_string (ptid_t ptid, int err)
 
static void linux_ptrace_test_ret_to_nx (void)
 
static int linux_fork_to_function (gdb_byte *child_stack, void(*function)(gdb_byte *))
 
static void linux_grandchild_function (gdb_byte *child_stack)
 
static void linux_child_function (gdb_byte *child_stack)
 
static void linux_test_for_tracesysgood (int child_pid)
 
static void linux_test_for_tracefork (int child_pid)
 
static void linux_test_for_exitkill (int child_pid)
 
void linux_check_ptrace_features (void)
 
void linux_enable_event_reporting (pid_t pid, int options)
 
void linux_disable_event_reporting (pid_t pid)
 
static int ptrace_supports_feature (int ptrace_options)
 
int linux_supports_tracefork (void)
 
int linux_supports_traceclone (void)
 
int linux_supports_tracevforkdone (void)
 
int linux_supports_tracesysgood (void)
 
void linux_ptrace_init_warnings (void)
 
int linux_ptrace_get_extended_event (int wstat)
 
int linux_is_extended_waitstatus (int wstat)
 
int linux_wstatus_maybe_breakpoint (int wstat)
 

Variables

static int supported_ptrace_options = -1
 

Function Documentation

void linux_check_ptrace_features ( void  )
static void linux_child_function ( gdb_byte child_stack)
static
void linux_disable_event_reporting ( pid_t  pid)

Definition at line 510 of file linux-ptrace.c.

References ptrace(), PTRACE_SETOPTIONS, and PTRACE_TYPE_ARG3.

Referenced by linux_child_follow_fork().

void linux_enable_event_reporting ( pid_t  pid,
int  options 
)
static int linux_fork_to_function ( gdb_byte child_stack,
void(*)(gdb_byte *)  function 
)
static

Definition at line 262 of file linux-ptrace.c.

References gdb_assert, perror_with_name(), and xmalloc().

Referenced by linux_check_ptrace_features(), and linux_child_function().

static void linux_grandchild_function ( gdb_byte child_stack)
static

Definition at line 300 of file linux-ptrace.c.

References xfree().

Referenced by linux_child_function().

int linux_is_extended_waitstatus ( int  wstat)

Definition at line 595 of file linux-ptrace.c.

References linux_ptrace_get_extended_event().

Referenced by linux_nat_filter_event(), and wait_lwp().

void linux_ptrace_attach_fail_reason ( pid_t  pid,
struct buffer buffer 
)
char* linux_ptrace_attach_fail_reason_string ( ptid_t  ptid,
int  err 
)
int linux_ptrace_get_extended_event ( int  wstat)
void linux_ptrace_init_warnings ( void  )

Definition at line 573 of file linux-ptrace.c.

References linux_ptrace_test_ret_to_nx().

Referenced by linux_init_ptrace().

static void linux_ptrace_test_ret_to_nx ( void  )
static
int linux_supports_traceclone ( void  )
int linux_supports_tracefork ( void  )
int linux_supports_tracesysgood ( void  )

Definition at line 564 of file linux-ptrace.c.

References PTRACE_O_TRACESYSGOOD, and ptrace_supports_feature().

Referenced by linux_child_set_syscall_catchpoint().

int linux_supports_tracevforkdone ( void  )

Definition at line 555 of file linux-ptrace.c.

References PTRACE_O_TRACEVFORKDONE, and ptrace_supports_feature().

Referenced by linux_child_follow_fork().

static void linux_test_for_exitkill ( int  child_pid)
static
static void linux_test_for_tracefork ( int  child_pid)
static
static void linux_test_for_tracesysgood ( int  child_pid)
static
int linux_wstatus_maybe_breakpoint ( int  wstat)

Definition at line 603 of file linux-ptrace.c.

References WIFSTOPPED, and WSTOPSIG.

Referenced by linux_nat_filter_event().

static int ptrace_supports_feature ( int  ptrace_options)
static

Variable Documentation

int supported_ptrace_options = -1
static