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

Go to the source code of this file.

Data Structures

struct  hw_breakpoint
 

Macros

#define IN_MEM(addr, size, l1_addr, l1_size)
 
#define ASYNC_BANK_SIZE
 

Functions

void pt_regs_to_gdb_regs (unsigned long *gdb_regs, struct pt_regs *regs)
 
void sleeping_thread_to_gdb_regs (unsigned long *gdb_regs, struct task_struct *p)
 
void gdb_regs_to_pt_regs (unsigned long *gdb_regs, struct pt_regs *regs)
 
void kgdb_post_primary_code (struct pt_regs *regs, int e_vector, int err_code)
 
int kgdb_arch_handle_exception (int vector, int signo, int err_code, char *remcom_in_buffer, char *remcom_out_buffer, struct pt_regs *regs)
 
int kgdb_validate_break_address (unsigned long addr)
 
void kgdb_arch_set_pc (struct pt_regs *regs, unsigned long ip)
 
int kgdb_arch_init (void)
 
void kgdb_arch_exit (void)
 

Variables

struct kgdb_arch arch_kgdb_ops
 

Macro Definition Documentation

#define ASYNC_BANK_SIZE
Value:

Definition at line 438 of file kgdb.c.

#define IN_MEM (   addr,
  size,
  l1_addr,
  l1_size 
)
Value:
({ \
unsigned long __addr = (unsigned long)(addr); \
(l1_size && __addr >= l1_addr && __addr + (size) <= l1_addr + l1_size); \
})

Definition at line 433 of file kgdb.c.

Function Documentation

void gdb_regs_to_pt_regs ( unsigned long gdb_regs,
struct pt_regs regs 
)

Definition at line 90 of file kgdb.c.

void kgdb_arch_exit ( void  )

Definition at line 478 of file kgdb.c.

int kgdb_arch_handle_exception ( int  vector,
int  signo,
int  err_code,
char remcom_in_buffer,
char remcom_out_buffer,
struct pt_regs regs 
)

Definition at line 365 of file kgdb.c.

int kgdb_arch_init ( void  )

Definition at line 467 of file kgdb.c.

void kgdb_arch_set_pc ( struct pt_regs regs,
unsigned long  ip 
)

Definition at line 462 of file kgdb.c.

void kgdb_post_primary_code ( struct pt_regs regs,
int  e_vector,
int  err_code 
)

Definition at line 352 of file kgdb.c.

int kgdb_validate_break_address ( unsigned long  addr)

Definition at line 442 of file kgdb.c.

void pt_regs_to_gdb_regs ( unsigned long gdb_regs,
struct pt_regs regs 
)

Definition at line 13 of file kgdb.c.

void sleeping_thread_to_gdb_regs ( unsigned long gdb_regs,
struct task_struct p 
)

Definition at line 83 of file kgdb.c.

Variable Documentation

struct kgdb_arch arch_kgdb_ops
Initial value:
= {
.gdb_bpt_instr = {0xa1},
.flags = KGDB_HW_BREAKPOINT,
.set_hw_breakpoint = bfin_set_hw_break,
.remove_hw_breakpoint = bfin_remove_hw_break,
.disable_hw_break = bfin_disable_hw_debug,
.remove_all_hw_break = bfin_remove_all_hw_break,
.correct_hw_break = bfin_correct_hw_break,
}

Definition at line 423 of file kgdb.c.