GDBserver
|
#include "nat/linux-nat.h"
#include "nat/gdb_thread_db.h"
#include <signal.h>
#include "gdbthread.h"
#include "gdb_proc_service.h"
#include "nat/linux-ptrace.h"
#include "target/waitstatus.h"
Go to the source code of this file.
Classes | |
struct | usrregs_info |
struct | regs_info |
struct | process_info_private |
struct | linux_target_ops |
struct | lwp_info |
Macros | |
#define | PTRACE_XFER_TYPE long |
#define | get_thread_lwp(thr) ((struct lwp_info *) (inferior_target_data (thr))) |
#define | get_lwp_thread(lwp) ((lwp)->thread) |
Functions | |
int | linux_pid_exe_is_elf_64_file (int pid, unsigned int *machine) |
int | linux_attach_lwp (ptid_t ptid) |
struct lwp_info * | find_lwp_pid (ptid_t ptid) |
void | initialize_low_arch (void) |
int | thread_db_init (int use_events) |
void | thread_db_detach (struct process_info *) |
void | thread_db_mourn (struct process_info *) |
int | thread_db_handle_monitor_command (char *) |
int | thread_db_get_tls_address (struct thread_info *thread, CORE_ADDR offset, CORE_ADDR load_module, CORE_ADDR *address) |
int | thread_db_look_up_one_symbol (const char *name, CORE_ADDR *addrp) |
Variables | |
struct linux_target_ops | the_low_target |
#define get_lwp_thread | ( | lwp | ) | ((lwp)->thread) |
Definition at line 236 of file linux-low.h.
Referenced by aarch64_linux_prepare_to_resume(), arm_prepare_to_resume(), check_ptrace_stopped_lwp_gone(), check_stopped_by_breakpoint(), check_stopped_by_watchpoint(), delete_lwp(), dequeue_one_deferred_signal(), enqueue_one_deferred_signal(), get_pc(), handle_extended_wait(), handle_tracepoints(), kill_wait_lwp(), linux_fast_tracepoint_collecting(), linux_kill_one_lwp(), linux_low_filter_event(), linux_resume_one_lwp_throw(), linux_wait_1(), linux_wait_for_event_filtered(), lwp_suspended_decr(), lwp_suspended_inc(), maybe_move_out_of_jump_pad(), mips_linux_prepare_to_resume(), ps_lgetregs(), ptid_of_lwp(), send_sigstop(), start_step_over(), stop_all_lwps(), unstop_all_lwps(), and x86_get_thread_area().
#define get_thread_lwp | ( | thr | ) | ((struct lwp_info *) (inferior_target_data (thr))) |
Definition at line 235 of file linux-low.h.
Referenced by arm_stopped_by_watchpoint(), arm_stopped_data_address(), count_events_callback(), debug_reg_change_callback(), delete_lwp_callback(), find_lwp_pid(), find_one_thread(), get_detach_signal(), iterate_over_lwps(), iterate_over_lwps_filter(), kill_one_lwp_callback(), linux_detach_one_lwp(), linux_resume(), linux_resume_one_thread(), linux_set_resume_request(), linux_stabilize_threads(), linux_stopped_by_hw_breakpoint(), linux_stopped_by_sw_breakpoint(), linux_stopped_by_watchpoint(), linux_stopped_data_address(), linux_thread_stopped(), linux_wait_1(), linux_wait_for_event_filtered(), lwp_running(), move_out_of_jump_pad_callback(), need_step_over_p(), not_stopped_callback(), proceed_all_lwps(), proceed_one_lwp(), reset_lwp_ptrace_options_callback(), resume_status_pending_p(), resume_stopped_resumed_lwps(), select_event_lwp(), select_event_lwp_callback(), select_singlestep_lwp_callback(), send_sigstop_callback(), status_pending_p_callback(), stuck_in_jump_pad_callback(), suspend_and_send_sigstop_callback(), thread_db_create_event(), thread_db_get_tls_address(), thread_still_has_status_pending_p(), unsuspend_and_proceed_one_lwp(), unsuspend_one_lwp(), update_registers_callback(), and update_watch_registers_callback().
#define PTRACE_XFER_TYPE long |
Definition at line 30 of file linux-low.h.
Referenced by linux_read_memory(), and linux_write_memory().
Definition at line 1531 of file linux-low.c.
References all_threads, find_inferior(), get_thread_lwp, and same_lwp().
Referenced by arm_new_fork(), attach_thread(), check_zombie_leaders(), complete_ongoing_step_over(), linux_kill(), linux_low_filter_event(), linux_thread_alive(), linux_wait_for_event_filtered(), maybe_attach_thread(), ps_lgetregs(), and x86_get_thread_area().
void initialize_low_arch | ( | void | ) |
Definition at line 1336 of file linux-aarch64-low.c.
References arm_regsets_info, copy_target_description(), cris_regsets_info, init_registers_aarch64(), init_registers_amd64_avx512_linux(), init_registers_amd64_avx_linux(), init_registers_amd64_linux(), init_registers_amd64_mpx_linux(), init_registers_arm(), init_registers_arm_with_iwmmxt(), init_registers_arm_with_neon(), init_registers_arm_with_vfpv2(), init_registers_arm_with_vfpv3(), init_registers_bfin(), init_registers_cris(), init_registers_crisv32(), init_registers_i386_avx512_linux(), init_registers_i386_avx_linux(), init_registers_i386_linux(), init_registers_i386_mmx_linux(), init_registers_i386_mpx_linux(), init_registers_ia64(), init_registers_m32r(), init_registers_m68k(), init_registers_mips64_dsp_linux(), init_registers_mips64_linux(), init_registers_mips_dsp_linux(), init_registers_mips_linux(), init_registers_nios2_linux(), init_registers_powerpc_32l(), init_registers_powerpc_64l(), init_registers_powerpc_altivec32l(), init_registers_powerpc_altivec64l(), init_registers_powerpc_cell32l(), init_registers_powerpc_cell64l(), init_registers_powerpc_e500l(), init_registers_powerpc_isa205_32l(), init_registers_powerpc_isa205_64l(), init_registers_powerpc_isa205_altivec32l(), init_registers_powerpc_isa205_altivec64l(), init_registers_powerpc_isa205_vsx32l(), init_registers_powerpc_isa205_vsx64l(), init_registers_powerpc_vsx32l(), init_registers_powerpc_vsx64l(), init_registers_s390_linux32(), init_registers_s390_linux32v1(), init_registers_s390_linux32v2(), init_registers_s390_linux64(), init_registers_s390_linux64v1(), init_registers_s390_linux64v2(), init_registers_s390_te_linux64(), init_registers_s390_tevx_linux64(), init_registers_s390_vx_linux64(), init_registers_s390x_linux64(), init_registers_s390x_linux64v1(), init_registers_s390x_linux64v2(), init_registers_s390x_te_linux64(), init_registers_s390x_tevx_linux64(), init_registers_s390x_vx_linux64(), init_registers_sh(), init_registers_sparc64(), init_registers_tic6x_c62x_linux(), init_registers_tic6x_c64x_linux(), init_registers_tic6x_c64xp_linux(), init_registers_tilegx(), init_registers_tilegx32(), init_registers_x32_avx512_linux(), init_registers_x32_avx_linux(), init_registers_x32_linux(), init_registers_xtensa(), nios2_regsets_info, ppc_regsets_info, sh_regsets_info, tic6x_regsets_info, tile_regsets_info, xmalloc(), target_desc::xmltarget, and xmltarget_i386_linux_no_xml.
Referenced by initialize_low().
int linux_attach_lwp | ( | ptid_t | ptid | ) |
Definition at line 846 of file linux-low.c.
References add_lwp(), debug_printf(), debug_threads, errno, kill_lwp(), linux_proc_pid_is_stopped(), lwp_info::must_set_ptrace_flags, ptid_get_lwp(), PTRACE_TYPE_ARG3, PTRACE_TYPE_ARG4, and lwp_info::stop_expected.
Referenced by attach_proc_task_lwp_callback(), attach_thread(), and linux_attach().
int linux_pid_exe_is_elf_64_file | ( | int | pid, |
unsigned int * | machine | ||
) |
Definition at line 379 of file linux-low.c.
References elf_64_file_p().
Referenced by tile_arch_setup(), x86_linux_read_description(), and x86_siginfo_fixup().
void thread_db_detach | ( | struct process_info * | ) |
Definition at line 958 of file thread-db.c.
References disable_thread_event_reporting(), process_info::priv, remove_thread_event_breakpoints(), and process_info_private::thread_db.
Referenced by linux_detach().
int thread_db_get_tls_address | ( | struct thread_info * | thread, |
CORE_ADDR | offset, | ||
CORE_ADDR | load_module, | ||
CORE_ADDR * | address | ||
) |
Definition at line 504 of file thread-db.c.
References thread_db::all_symbols_looked_up, current_thread, thread_info::entry, find_one_thread(), get_thread_lwp, get_thread_process(), inferior_list_entry::id, process_info::priv, TD_ERR, TD_NOTHR, TD_OK, thread_db::td_thr_tls_get_addr_p, thread_db::td_thr_tlsbase_p, and process_info_private::thread_db.
int thread_db_handle_monitor_command | ( | char * | ) |
Definition at line 1001 of file thread-db.c.
References LIBTHREAD_DB_SEARCH_PATH, libthread_db_search_path, monitor_output(), and xstrdup().
int thread_db_init | ( | int | use_events | ) |
Definition at line 836 of file thread-db.c.
References current_process(), linux_proc_task_list_dir_exists(), pid_of, thread_db_enable_reporting(), thread_db_find_new_threads(), thread_db_load_search(), thread_db_look_up_symbols(), thread_db_mourn(), and thread_db_use_events.
Referenced by linux_look_up_symbols().
int thread_db_look_up_one_symbol | ( | const char * | name, |
CORE_ADDR * | addrp | ||
) |
Definition at line 490 of file thread-db.c.
References thread_db::all_symbols_looked_up, current_process(), look_up_one_symbol(), process_info::priv, and process_info_private::thread_db.
Referenced by ps_pglobal_lookup().
void thread_db_mourn | ( | struct process_info * | ) |
Definition at line 972 of file thread-db.c.
References thread_db::handle, process_info::priv, td_ta_delete(), thread_db::thread_agent, and process_info_private::thread_db.
Referenced by linux_mourn(), and thread_db_init().
struct linux_target_ops the_low_target |
Definition at line 1307 of file linux-aarch64-low.c.