GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Enumerations | Functions | Variables
linux-tdep.c File Reference
#include "defs.h"
#include "gdbtypes.h"
#include "linux-tdep.h"
#include "auxv.h"
#include "target.h"
#include "gdbthread.h"
#include "gdbcore.h"
#include "regcache.h"
#include "regset.h"
#include "elf/common.h"
#include "elf-bfd.h"
#include "inferior.h"
#include "cli/cli-utils.h"
#include "arch-utils.h"
#include "gdbsupport/gdb_obstack.h"
#include "observable.h"
#include "objfiles.h"
#include "infcall.h"
#include "gdbcmd.h"
#include "gdbsupport/gdb_regex.h"
#include "gdbsupport/enum-flags.h"
#include "gdbsupport/gdb_optional.h"
#include "gcore.h"
#include "gcore-elf.h"
#include "solib-svr4.h"
#include "memtag.h"
#include <ctype.h>
#include <unordered_map>

Go to the source code of this file.

Classes

struct  smaps_vmflags
 
struct  smaps_data
 
struct  linux_gdbarch_data
 
struct  linux_info
 
struct  linux_info::vsyscall_range
 
struct  mapping
 
struct  mapping_regexes
 
struct  linux_find_memory_regions_data
 
struct  linux_make_mappings_data
 

Macros

#define SELFMAG   4
 
#define GDB_MMAP_MAP_PRIVATE   0x02 /* Changes are private. */
 
#define GDB_MMAP_MAP_ANONYMOUS   0x20 /* Don't use a file. */
 

Typedefs

typedef int linux_find_memory_region_ftype(ULONGEST vaddr, ULONGEST size, ULONGEST offset, ULONGEST inode, int read, int write, int exec, int modified, bool memory_tagged, const char *filename, void *data)
 
typedef int linux_dump_mapping_p_ftype(filter_flags filterflags, const struct smaps_vmflags *v, int maybe_private_p, int mapping_anon_p, int mapping_file_p, const char *filename, ULONGEST addr, ULONGEST offset)
 

Enumerations

enum  filter_flag {
  COREFILTER_ANON_PRIVATE = 1 << 0 , COREFILTER_ANON_SHARED = 1 << 1 , COREFILTER_MAPPED_PRIVATE = 1 << 2 , COREFILTER_MAPPED_SHARED = 1 << 3 ,
  COREFILTER_ELF_HEADERS = 1 << 4 , COREFILTER_HUGETLB_PRIVATE = 1 << 5 , COREFILTER_HUGETLB_SHARED = 1 << 6
}
 
enum  {
  LINUX_SIGHUP = 1 , LINUX_SIGINT = 2 , LINUX_SIGQUIT = 3 , LINUX_SIGILL = 4 ,
  LINUX_SIGTRAP = 5 , LINUX_SIGABRT = 6 , LINUX_SIGIOT = 6 , LINUX_SIGBUS = 7 ,
  LINUX_SIGFPE = 8 , LINUX_SIGKILL = 9 , LINUX_SIGUSR1 = 10 , LINUX_SIGSEGV = 11 ,
  LINUX_SIGUSR2 = 12 , LINUX_SIGPIPE = 13 , LINUX_SIGALRM = 14 , LINUX_SIGTERM = 15 ,
  LINUX_SIGSTKFLT = 16 , LINUX_SIGCHLD = 17 , LINUX_SIGCONT = 18 , LINUX_SIGSTOP = 19 ,
  LINUX_SIGTSTP = 20 , LINUX_SIGTTIN = 21 , LINUX_SIGTTOU = 22 , LINUX_SIGURG = 23 ,
  LINUX_SIGXCPU = 24 , LINUX_SIGXFSZ = 25 , LINUX_SIGVTALRM = 26 , LINUX_SIGPROF = 27 ,
  LINUX_SIGWINCH = 28 , LINUX_SIGIO = 29 , LINUX_SIGPOLL = LINUX_SIGIO , LINUX_SIGPWR = 30 ,
  LINUX_SIGSYS = 31 , LINUX_SIGUNUSED = 31 , LINUX_SIGRTMIN = 32 , LINUX_SIGRTMAX = 64
}
 

Functions

 DEF_ENUM_FLAGS_TYPE (enum filter_flag, filter_flags)
 
static struct linux_gdbarch_dataget_linux_gdbarch_data (struct gdbarch *gdbarch)
 
static void invalidate_linux_cache_inf (struct inferior *inf)
 
static void linux_inferior_execd (inferior *exec_inf, inferior *follow_inf)
 
static struct linux_infoget_linux_inferior_data (inferior *inf)
 
struct typelinux_get_siginfo_type_with_fields (struct gdbarch *gdbarch, linux_siginfo_extra_fields extra_fields)
 
static struct typelinux_get_siginfo_type (struct gdbarch *gdbarch)
 
int linux_is_uclinux (void)
 
static int linux_has_shared_address_space (struct gdbarch *gdbarch)
 
static std::string linux_core_pid_to_str (struct gdbarch *gdbarch, ptid_t ptid)
 
static mapping read_mapping (const char *line)
 
static void decode_vmflags (char *p, struct smaps_vmflags *v)
 
static int mapping_is_anonymous_p (const char *filename)
 
static int dump_mapping_p (filter_flags filterflags, const struct smaps_vmflags *v, int maybe_private_p, int mapping_anon_p, int mapping_file_p, const char *filename, ULONGEST addr, ULONGEST offset)
 
static int dump_note_entry_p (filter_flags filterflags, const struct smaps_vmflags *v, int maybe_private_p, int mapping_anon_p, int mapping_file_p, const char *filename, ULONGEST addr, ULONGEST offset)
 
static void linux_info_proc (struct gdbarch *gdbarch, const char *args, enum info_proc_what what)
 
static void linux_read_core_file_mappings (struct gdbarch *gdbarch, struct bfd *cbfd, read_core_file_mappings_pre_loop_ftype pre_loop_cb, read_core_file_mappings_loop_ftype loop_cb)
 
static void linux_core_info_proc_mappings (struct gdbarch *gdbarch, const char *args)
 
static void linux_core_info_proc (struct gdbarch *gdbarch, const char *args, enum info_proc_what what)
 
static LONGEST linux_core_xfer_siginfo (struct gdbarch *gdbarch, gdb_byte *readbuf, ULONGEST offset, ULONGEST len)
 
static std::vector< struct smaps_dataparse_smaps_data (const char *data, const std::string maps_filename)
 
static bool linux_process_address_in_memtag_page (CORE_ADDR address)
 
static bool linux_core_file_address_in_memtag_page (CORE_ADDR address)
 
bool linux_address_in_memtag_page (CORE_ADDR address)
 
static int linux_find_memory_regions_full (struct gdbarch *gdbarch, linux_dump_mapping_p_ftype *should_dump_mapping_p, linux_find_memory_region_ftype *func, void *obfd)
 
static int linux_find_memory_regions_thunk (ULONGEST vaddr, ULONGEST size, ULONGEST offset, ULONGEST inode, int read, int write, int exec, int modified, bool memory_tagged, const char *filename, void *arg)
 
static int linux_find_memory_regions (struct gdbarch *gdbarch, find_memory_region_ftype func, void *obfd)
 
static int linux_make_mappings_callback (ULONGEST vaddr, ULONGEST size, ULONGEST offset, ULONGEST inode, int read, int write, int exec, int modified, bool memory_tagged, const char *filename, void *data)
 
static void linux_make_mappings_corefile_notes (struct gdbarch *gdbarch, bfd *obfd, gdb::unique_xmalloc_ptr< char > &note_data, int *note_size)
 
static gdb::byte_vector linux_get_siginfo_data (thread_info *thread, struct gdbarch *gdbarch)
 
static void linux_corefile_thread (struct thread_info *info, struct gdbarch *gdbarch, bfd *obfd, gdb::unique_xmalloc_ptr< char > &note_data, int *note_size, gdb_signal stop_signal)
 
static int linux_fill_prpsinfo (struct elf_internal_linux_prpsinfo *p)
 
static gdb::unique_xmalloc_ptr< char > linux_make_corefile_notes (struct gdbarch *gdbarch, bfd *obfd, int *note_size)
 
enum gdb_signal linux_gdb_signal_from_target (struct gdbarch *gdbarch, int signal)
 
int linux_gdb_signal_to_target (struct gdbarch *gdbarch, enum gdb_signal signal)
 
static int linux_vsyscall_range_raw (struct gdbarch *gdbarch, struct mem_range *range)
 
static int linux_vsyscall_range (struct gdbarch *gdbarch, struct mem_range *range)
 
static CORE_ADDR linux_infcall_mmap (CORE_ADDR size, unsigned prot)
 
static void linux_infcall_munmap (CORE_ADDR addr, CORE_ADDR size)
 
CORE_ADDR linux_displaced_step_location (struct gdbarch *gdbarch)
 
displaced_step_prepare_status linux_displaced_step_prepare (gdbarch *arch, thread_info *thread, CORE_ADDR &displaced_pc)
 
displaced_step_finish_status linux_displaced_step_finish (gdbarch *arch, thread_info *thread, const target_waitstatus &status)
 
const displaced_step_copy_insn_closurelinux_displaced_step_copy_insn_closure_by_addr (inferior *inf, CORE_ADDR addr)
 
void linux_displaced_step_restore_all_in_ptid (inferior *parent_inf, ptid_t ptid)
 
static CORE_ADDR linux_get_hwcap_helper (const gdb::optional< gdb::byte_vector > &auxv, target_ops *target, gdbarch *gdbarch, CORE_ADDR match)
 
CORE_ADDR linux_get_hwcap (const gdb::optional< gdb::byte_vector > &auxv, target_ops *target, gdbarch *gdbarch)
 
CORE_ADDR linux_get_hwcap ()
 
CORE_ADDR linux_get_hwcap2 (const gdb::optional< gdb::byte_vector > &auxv, target_ops *target, gdbarch *gdbarch)
 
CORE_ADDR linux_get_hwcap2 ()
 
static void show_use_coredump_filter (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
static void show_dump_excluded_mappings (struct ui_file *file, int from_tty, struct cmd_list_element *c, const char *value)
 
void linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch, int num_disp_step_buffers)
 
void _initialize_linux_tdep ()
 
link_map_offsetslinux_ilp32_fetch_link_map_offsets ()
 
link_map_offsetslinux_lp64_fetch_link_map_offsets ()
 

Variables

static bool use_coredump_filter = true
 
static bool dump_excluded_mappings = false
 
static const registry< gdbarch >::key< linux_gdbarch_datalinux_gdbarch_data_handle
 
static const registry< inferior >::key< linux_infolinux_inferior_data
 
static linux_find_memory_region_ftype linux_make_mappings_callback
 

Macro Definition Documentation

◆ GDB_MMAP_MAP_ANONYMOUS

#define GDB_MMAP_MAP_ANONYMOUS   0x20 /* Don't use a file. */

Definition at line 2501 of file linux-tdep.c.

Referenced by linux_infcall_mmap().

◆ GDB_MMAP_MAP_PRIVATE

#define GDB_MMAP_MAP_PRIVATE   0x02 /* Changes are private. */

Definition at line 2500 of file linux-tdep.c.

Referenced by linux_infcall_mmap().

◆ SELFMAG

#define SELFMAG   4

Typedef Documentation

◆ linux_dump_mapping_p_ftype

typedef int linux_dump_mapping_p_ftype(filter_flags filterflags, const struct smaps_vmflags *v, int maybe_private_p, int mapping_anon_p, int mapping_file_p, const char *filename, ULONGEST addr, ULONGEST offset)

Definition at line 1336 of file linux-tdep.c.

◆ linux_find_memory_region_ftype

typedef int linux_find_memory_region_ftype(ULONGEST vaddr, ULONGEST size, ULONGEST offset, ULONGEST inode, int read, int write, int exec, int modified, bool memory_tagged, const char *filename, void *data)

Definition at line 1328 of file linux-tdep.c.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
LINUX_SIGHUP 
LINUX_SIGINT 
LINUX_SIGQUIT 
LINUX_SIGILL 
LINUX_SIGTRAP 
LINUX_SIGABRT 
LINUX_SIGIOT 
LINUX_SIGBUS 
LINUX_SIGFPE 
LINUX_SIGKILL 
LINUX_SIGUSR1 
LINUX_SIGSEGV 
LINUX_SIGUSR2 
LINUX_SIGPIPE 
LINUX_SIGALRM 
LINUX_SIGTERM 
LINUX_SIGSTKFLT 
LINUX_SIGCHLD 
LINUX_SIGCONT 
LINUX_SIGSTOP 
LINUX_SIGTSTP 
LINUX_SIGTTIN 
LINUX_SIGTTOU 
LINUX_SIGURG 
LINUX_SIGXCPU 
LINUX_SIGXFSZ 
LINUX_SIGVTALRM 
LINUX_SIGPROF 
LINUX_SIGWINCH 
LINUX_SIGIO 
LINUX_SIGPOLL 
LINUX_SIGPWR 
LINUX_SIGSYS 
LINUX_SIGUNUSED 
LINUX_SIGRTMIN 
LINUX_SIGRTMAX 

Definition at line 155 of file linux-tdep.c.

◆ filter_flag

Enumerator
COREFILTER_ANON_PRIVATE 
COREFILTER_ANON_SHARED 
COREFILTER_MAPPED_PRIVATE 
COREFILTER_MAPPED_SHARED 
COREFILTER_ELF_HEADERS 
COREFILTER_HUGETLB_PRIVATE 
COREFILTER_HUGETLB_SHARED 

Definition at line 56 of file linux-tdep.c.

Function Documentation

◆ _initialize_linux_tdep()

void _initialize_linux_tdep ( )

Definition at line 2793 of file linux-tdep.c.

Referenced by initialize_all_files().

◆ decode_vmflags()

static void decode_vmflags ( char * p,
struct smaps_vmflags * v )
static

◆ DEF_ENUM_FLAGS_TYPE()

DEF_ENUM_FLAGS_TYPE ( enum filter_flag,
filter_flags  )

◆ dump_mapping_p()

static int dump_mapping_p ( filter_flags filterflags,
const struct smaps_vmflags * v,
int maybe_private_p,
int mapping_anon_p,
int mapping_file_p,
const char * filename,
ULONGEST addr,
ULONGEST offset )
static

◆ dump_note_entry_p()

static int dump_note_entry_p ( filter_flags filterflags,
const struct smaps_vmflags * v,
int maybe_private_p,
int mapping_anon_p,
int mapping_file_p,
const char * filename,
ULONGEST addr,
ULONGEST offset )
static

Definition at line 796 of file linux-tdep.c.

Referenced by linux_make_mappings_corefile_notes().

◆ get_linux_gdbarch_data()

static struct linux_gdbarch_data * get_linux_gdbarch_data ( struct gdbarch * gdbarch)
static

◆ get_linux_inferior_data()

static struct linux_info * get_linux_inferior_data ( inferior * inf)
static

◆ invalidate_linux_cache_inf()

static void invalidate_linux_cache_inf ( struct inferior * inf)
static

Definition at line 242 of file linux-tdep.c.

References linux_inferior_data.

Referenced by linux_inferior_execd().

◆ linux_address_in_memtag_page()

bool linux_address_in_memtag_page ( CORE_ADDR address)

◆ linux_core_file_address_in_memtag_page()

static bool linux_core_file_address_in_memtag_page ( CORE_ADDR address)
static

Definition at line 1523 of file linux-tdep.c.

References core_bfd, and get_next_core_memtag_section().

Referenced by linux_address_in_memtag_page().

◆ linux_core_info_proc()

static void linux_core_info_proc ( struct gdbarch * gdbarch,
const char * args,
enum info_proc_what what )
static

◆ linux_core_info_proc_mappings()

static void linux_core_info_proc_mappings ( struct gdbarch * gdbarch,
const char * args )
static

◆ linux_core_pid_to_str()

static std::string linux_core_pid_to_str ( struct gdbarch * gdbarch,
ptid_t ptid )
static

Definition at line 446 of file linux-tdep.c.

References normal_pid_to_str().

Referenced by linux_init_abi().

◆ linux_core_xfer_siginfo()

static LONGEST linux_core_xfer_siginfo ( struct gdbarch * gdbarch,
gdb_byte * readbuf,
ULONGEST offset,
ULONGEST len )
static

Definition at line 1314 of file linux-tdep.c.

References thread_section_name::c_str(), core_bfd, inferior_ptid, and mapping::offset.

Referenced by linux_init_abi().

◆ linux_corefile_thread()

static void linux_corefile_thread ( struct thread_info * info,
struct gdbarch * gdbarch,
bfd * obfd,
gdb::unique_xmalloc_ptr< char > & note_data,
int * note_size,
gdb_signal stop_signal )
static

◆ linux_displaced_step_copy_insn_closure_by_addr()

const displaced_step_copy_insn_closure * linux_displaced_step_copy_insn_closure_by_addr ( inferior * inf,
CORE_ADDR addr )

Definition at line 2650 of file linux-tdep.c.

References linux_info::disp_step_bufs, registry< T >::get(), and linux_inferior_data.

Referenced by linux_init_abi().

◆ linux_displaced_step_finish()

displaced_step_finish_status linux_displaced_step_finish ( gdbarch * arch,
thread_info * thread,
const target_waitstatus & status )

◆ linux_displaced_step_location()

CORE_ADDR linux_displaced_step_location ( struct gdbarch * gdbarch)

◆ linux_displaced_step_prepare()

displaced_step_prepare_status linux_displaced_step_prepare ( gdbarch * arch,
thread_info * thread,
CORE_ADDR & displaced_pc )

◆ linux_displaced_step_restore_all_in_ptid()

void linux_displaced_step_restore_all_in_ptid ( inferior * parent_inf,
ptid_t ptid )

Definition at line 2664 of file linux-tdep.c.

References linux_info::disp_step_bufs, registry< T >::get(), and linux_inferior_data.

Referenced by linux_init_abi().

◆ linux_fill_prpsinfo()

static int linux_fill_prpsinfo ( struct elf_internal_linux_prpsinfo * p)
static

◆ linux_find_memory_regions()

static int linux_find_memory_regions ( struct gdbarch * gdbarch,
find_memory_region_ftype func,
void * obfd )
static

◆ linux_find_memory_regions_full()

static int linux_find_memory_regions_full ( struct gdbarch * gdbarch,
linux_dump_mapping_p_ftype * should_dump_mapping_p,
linux_find_memory_region_ftype * func,
void * obfd )
static

◆ linux_find_memory_regions_thunk()

static int linux_find_memory_regions_thunk ( ULONGEST vaddr,
ULONGEST size,
ULONGEST offset,
ULONGEST inode,
int read,
int write,
int exec,
int modified,
bool memory_tagged,
const char * filename,
void * arg )
static

Definition at line 1657 of file linux-tdep.c.

References read(), and size.

Referenced by linux_find_memory_regions().

◆ linux_gdb_signal_from_target()

enum gdb_signal linux_gdb_signal_from_target ( struct gdbarch * gdbarch,
int signal )

◆ linux_gdb_signal_to_target()

int linux_gdb_signal_to_target ( struct gdbarch * gdbarch,
enum gdb_signal signal )

◆ linux_get_hwcap() [1/2]

CORE_ADDR linux_get_hwcap ( )

◆ linux_get_hwcap() [2/2]

CORE_ADDR linux_get_hwcap ( const gdb::optional< gdb::byte_vector > & auxv,
target_ops * target,
gdbarch * gdbarch )

Definition at line 2691 of file linux-tdep.c.

References linux_get_hwcap_helper().

◆ linux_get_hwcap2() [1/2]

CORE_ADDR linux_get_hwcap2 ( )

◆ linux_get_hwcap2() [2/2]

CORE_ADDR linux_get_hwcap2 ( const gdb::optional< gdb::byte_vector > & auxv,
target_ops * target,
gdbarch * gdbarch )

Definition at line 2710 of file linux-tdep.c.

References linux_get_hwcap_helper().

◆ linux_get_hwcap_helper()

static CORE_ADDR linux_get_hwcap_helper ( const gdb::optional< gdb::byte_vector > & auxv,
target_ops * target,
gdbarch * gdbarch,
CORE_ADDR match )
static

Definition at line 2678 of file linux-tdep.c.

References target_auxv_search().

Referenced by linux_get_hwcap(), and linux_get_hwcap2().

◆ linux_get_siginfo_data()

static gdb::byte_vector linux_get_siginfo_data ( thread_info * thread,
struct gdbarch * gdbarch )
static

◆ linux_get_siginfo_type()

static struct type * linux_get_siginfo_type ( struct gdbarch * gdbarch)
static

Definition at line 420 of file linux-tdep.c.

References linux_get_siginfo_type_with_fields().

Referenced by linux_init_abi().

◆ linux_get_siginfo_type_with_fields()

struct type * linux_get_siginfo_type_with_fields ( struct gdbarch * gdbarch,
linux_siginfo_extra_fields extra_fields )

◆ linux_has_shared_address_space()

static int linux_has_shared_address_space ( struct gdbarch * gdbarch)
static

Definition at line 438 of file linux-tdep.c.

References linux_is_uclinux().

Referenced by linux_init_abi().

◆ linux_ilp32_fetch_link_map_offsets()

link_map_offsets * linux_ilp32_fetch_link_map_offsets ( )

◆ linux_infcall_mmap()

static CORE_ADDR linux_infcall_mmap ( CORE_ADDR size,
unsigned prot )
static

◆ linux_infcall_munmap()

static void linux_infcall_munmap ( CORE_ADDR addr,
CORE_ADDR size )
static

◆ linux_inferior_execd()

static void linux_inferior_execd ( inferior * exec_inf,
inferior * follow_inf )
static

Definition at line 250 of file linux-tdep.c.

References invalidate_linux_cache_inf().

◆ linux_info_proc()

static void linux_info_proc ( struct gdbarch * gdbarch,
const char * args,
enum info_proc_what what )
static

◆ linux_init_abi()

void linux_init_abi ( struct gdbarch_info info,
struct gdbarch * gdbarch,
int num_disp_step_buffers )

Definition at line 2755 of file linux-tdep.c.

References get_linux_gdbarch_data(), linux_core_info_proc(), linux_core_pid_to_str(), linux_core_xfer_siginfo(), linux_displaced_step_copy_insn_closure_by_addr(), linux_displaced_step_finish(), linux_displaced_step_prepare(), linux_displaced_step_restore_all_in_ptid(), linux_find_memory_regions(), linux_gdb_signal_from_target(), linux_gdb_signal_to_target(), linux_get_siginfo_type(), linux_has_shared_address_space(), linux_infcall_mmap(), linux_infcall_munmap(), linux_info_proc(), linux_make_corefile_notes(), linux_read_core_file_mappings(), linux_vsyscall_range(), linux_gdbarch_data::num_disp_step_buffers, set_gdbarch_core_info_proc(), set_gdbarch_core_pid_to_str(), set_gdbarch_core_xfer_siginfo(), set_gdbarch_displaced_step_copy_insn_closure_by_addr(), set_gdbarch_displaced_step_finish(), set_gdbarch_displaced_step_prepare(), set_gdbarch_displaced_step_restore_all_in_ptid(), set_gdbarch_find_memory_regions(), set_gdbarch_gdb_signal_from_target(), set_gdbarch_gdb_signal_to_target(), set_gdbarch_get_siginfo_type(), set_gdbarch_has_shared_address_space(), set_gdbarch_infcall_mmap(), set_gdbarch_infcall_munmap(), set_gdbarch_info_proc(), set_gdbarch_make_corefile_notes(), set_gdbarch_read_core_file_mappings(), and set_gdbarch_vsyscall_range().

Referenced by aarch64_linux_init_abi(), alpha_linux_init_abi(), am33_linux_init_osabi(), amd64_linux_init_abi_common(), arc_linux_init_osabi(), arm_linux_init_abi(), bfin_linux_init_abi(), cris_linux_init_abi(), csky_linux_init_abi(), frv_linux_init_abi(), hppa_linux_init_abi(), i386_linux_init_abi(), ia64_linux_init_abi(), loongarch_linux_init_abi(), m32r_linux_init_abi(), m68k_linux_init_abi(), microblaze_linux_init_abi(), mips_linux_init_abi(), nios2_linux_init_abi(), or1k_linux_init_abi(), ppc_linux_init_abi(), riscv_linux_init_abi(), s390_linux_init_abi_any(), sh_linux_init_abi(), sparc32_linux_init_abi(), sparc64_linux_init_abi(), tic6x_uclinux_init_abi(), tilegx_linux_init_abi(), and xtensa_linux_init_abi().

◆ linux_is_uclinux()

int linux_is_uclinux ( void )

Definition at line 429 of file linux-tdep.c.

References dummy, and target_auxv_search().

Referenced by linux_has_shared_address_space(), and m68k_linux_get_sigtramp_info().

◆ linux_lp64_fetch_link_map_offsets()

link_map_offsets * linux_lp64_fetch_link_map_offsets ( )

◆ linux_make_corefile_notes()

static gdb::unique_xmalloc_ptr< char > linux_make_corefile_notes ( struct gdbarch * gdbarch,
bfd * obfd,
int * note_size )
static

◆ linux_make_mappings_callback()

static int linux_make_mappings_callback ( ULONGEST vaddr,
ULONGEST size,
ULONGEST offset,
ULONGEST inode,
int read,
int write,
int exec,
int modified,
bool memory_tagged,
const char * filename,
void * data )
static

◆ linux_make_mappings_corefile_notes()

static void linux_make_mappings_corefile_notes ( struct gdbarch * gdbarch,
bfd * obfd,
gdb::unique_xmalloc_ptr< char > & note_data,
int * note_size )
static

◆ linux_process_address_in_memtag_page()

static bool linux_process_address_in_memtag_page ( CORE_ADDR address)
static

◆ linux_read_core_file_mappings()

static void linux_read_core_file_mappings ( struct gdbarch * gdbarch,
struct bfd * cbfd,
read_core_file_mappings_pre_loop_ftype pre_loop_cb,
read_core_file_mappings_loop_ftype loop_cb )
static

◆ linux_vsyscall_range()

static int linux_vsyscall_range ( struct gdbarch * gdbarch,
struct mem_range * range )
static

Definition at line 2479 of file linux-tdep.c.

References current_inferior(), get_linux_inferior_data(), and linux_vsyscall_range_raw().

Referenced by linux_init_abi().

◆ linux_vsyscall_range_raw()

static int linux_vsyscall_range_raw ( struct gdbarch * gdbarch,
struct mem_range * range )
static

◆ mapping_is_anonymous_p()

static int mapping_is_anonymous_p ( const char * filename)
static

Definition at line 590 of file linux-tdep.c.

Referenced by parse_smaps_data().

◆ parse_smaps_data()

static std::vector< struct smaps_data > parse_smaps_data ( const char * data,
const std::string maps_filename )
static

◆ read_mapping()

static mapping read_mapping ( const char * line)
static

◆ show_dump_excluded_mappings()

static void show_dump_excluded_mappings ( struct ui_file * file,
int from_tty,
struct cmd_list_element * c,
const char * value )
static

Definition at line 2741 of file linux-tdep.c.

References gdb_printf().

◆ show_use_coredump_filter()

static void show_use_coredump_filter ( struct ui_file * file,
int from_tty,
struct cmd_list_element * c,
const char * value )
static

Definition at line 2730 of file linux-tdep.c.

References gdb_printf().

Variable Documentation

◆ dump_excluded_mappings

bool dump_excluded_mappings = false
static

Definition at line 129 of file linux-tdep.c.

Referenced by dump_mapping_p().

◆ linux_gdbarch_data_handle

const registry<gdbarch>::key<linux_gdbarch_data> linux_gdbarch_data_handle
static

Definition at line 203 of file linux-tdep.c.

Referenced by get_linux_gdbarch_data().

◆ linux_inferior_data

const registry<inferior>::key<linux_info> linux_inferior_data
static

◆ linux_make_mappings_callback

linux_find_memory_region_ftype linux_make_mappings_callback
static

Definition at line 1707 of file linux-tdep.c.

Referenced by linux_make_mappings_corefile_notes().

◆ use_coredump_filter

bool use_coredump_filter = true
static

Definition at line 124 of file linux-tdep.c.

Referenced by linux_find_memory_regions_full().