Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions | Variables
kgdb.c File Reference
#include <linux/irq.h>
#include <linux/kdebug.h>
#include <linux/kgdb.h>
#include <asm/traps.h>

Go to the source code of this file.

Functions

chardbg_get_reg (int regno, void *mem, struct pt_regs *regs)
 
int dbg_set_reg (int regno, void *mem, struct pt_regs *regs)
 
void sleeping_thread_to_gdb_regs (unsigned long *gdb_regs, struct task_struct *task)
 
void kgdb_arch_set_pc (struct pt_regs *regs, unsigned long pc)
 
int kgdb_arch_handle_exception (int exception_vector, int signo, int err_code, char *remcom_in_buffer, char *remcom_out_buffer, struct pt_regs *linux_regs)
 
void kgdb_roundup_cpus (unsigned long flags)
 
int kgdb_arch_init (void)
 
void kgdb_arch_exit (void)
 

Variables

struct dbg_reg_def_t dbg_reg_def [DBG_MAX_REG_NUM]
 
struct kgdb_arch arch_kgdb_ops
 

Function Documentation

char* dbg_get_reg ( int  regno,
void mem,
struct pt_regs regs 
)

Definition at line 47 of file kgdb.c.

int dbg_set_reg ( int  regno,
void mem,
struct pt_regs regs 
)

Definition at line 60 of file kgdb.c.

void kgdb_arch_exit ( void  )

kgdb_arch_exit - Perform any architecture specific uninitalization.

This function will handle the uninitalization of any architecture specific callbacks, for dynamic registration and unregistration.

Definition at line 236 of file kgdb.c.

int kgdb_arch_handle_exception ( int  exception_vector,
int  signo,
int  err_code,
char remcom_in_buffer,
char remcom_out_buffer,
struct pt_regs linux_regs 
)

Definition at line 113 of file kgdb.c.

int kgdb_arch_init ( void  )

kgdb_arch_init - Perform any architecture specific initalization.

This function will handle the initalization of any architecture specific callbacks.

Definition at line 217 of file kgdb.c.

void kgdb_arch_set_pc ( struct pt_regs regs,
unsigned long  pc 
)

Definition at line 106 of file kgdb.c.

void kgdb_roundup_cpus ( unsigned long  flags)

Definition at line 177 of file kgdb.c.

void sleeping_thread_to_gdb_regs ( unsigned long gdb_regs,
struct task_struct task 
)

Definition at line 72 of file kgdb.c.

Variable Documentation

struct kgdb_arch arch_kgdb_ops
Initial value:
= {
.gdb_bpt_instr = {0xfe, 0xde, 0xff, 0xe7}
}

Definition at line 249 of file kgdb.c.

struct dbg_reg_def_t dbg_reg_def[DBG_MAX_REG_NUM]
Initial value:
=
{
{ "r0", 4, offsetof(struct pt_regs, ARM_r0)},
{ "r1", 4, offsetof(struct pt_regs, ARM_r1)},
{ "r2", 4, offsetof(struct pt_regs, ARM_r2)},
{ "r3", 4, offsetof(struct pt_regs, ARM_r3)},
{ "r4", 4, offsetof(struct pt_regs, ARM_r4)},
{ "r5", 4, offsetof(struct pt_regs, ARM_r5)},
{ "r6", 4, offsetof(struct pt_regs, ARM_r6)},
{ "r7", 4, offsetof(struct pt_regs, ARM_r7)},
{ "r8", 4, offsetof(struct pt_regs, ARM_r8)},
{ "r9", 4, offsetof(struct pt_regs, ARM_r9)},
{ "r10", 4, offsetof(struct pt_regs, ARM_r10)},
{ "fp", 4, offsetof(struct pt_regs, ARM_fp)},
{ "ip", 4, offsetof(struct pt_regs, ARM_ip)},
{ "sp", 4, offsetof(struct pt_regs, ARM_sp)},
{ "lr", 4, offsetof(struct pt_regs, ARM_lr)},
{ "pc", 4, offsetof(struct pt_regs, ARM_pc)},
{ "f0", 12, -1 },
{ "f1", 12, -1 },
{ "f2", 12, -1 },
{ "f3", 12, -1 },
{ "f4", 12, -1 },
{ "f5", 12, -1 },
{ "f6", 12, -1 },
{ "f7", 12, -1 },
{ "fps", 4, -1 },
{ "cpsr", 4, offsetof(struct pt_regs, ARM_cpsr)},
}

Definition at line 17 of file kgdb.c.