Name

struct kgdb_arch — Describe architecture specific values.

Synopsis

struct kgdb_arch {
  unsigned char gdb_bpt_instr;
  unsigned long flags;
  int (* set_breakpoint) (unsigned long, char *);
  int (* remove_breakpoint) (unsigned long, char *);
  int (* set_hw_breakpoint) (unsigned long, int, enum kgdb_bptype);
  int (* remove_hw_breakpoint) (unsigned long, int, enum kgdb_bptype);
  void (* disable_hw_break) (struct pt_regs *regs);
  void (* remove_all_hw_break) (void);
  void (* correct_hw_break) (void);
  void (* enable_nmi) (bool on);
};  

Members

unsigned char gdb_bpt_instr

The instruction to trigger a breakpoint.

unsigned long flags

Flags for the breakpoint, currently just KGDB_HW_BREAKPOINT.

int (*)(unsigned long, char *) set_breakpoint

Allow an architecture to specify how to set a software breakpoint.

int (*)(unsigned long, char *) remove_breakpoint

Allow an architecture to specify how to remove a software breakpoint.

int (*)(unsigned long, int, enum kgdb_bptype) set_hw_breakpoint

Allow an architecture to specify how to set a hardware breakpoint.

int (*)(unsigned long, int, enum kgdb_bptype) remove_hw_breakpoint

Allow an architecture to specify how to remove a hardware breakpoint.

void (*)(struct pt_regs *regs) disable_hw_break

Allow an architecture to specify how to disable hardware breakpoints for a single cpu.

void (*)(void) remove_all_hw_break

Allow an architecture to specify how to remove all hardware breakpoints.

void (*)(void) correct_hw_break

Allow an architecture to specify how to correct the hardware debug registers.

void (*)(bool on) enable_nmi

Manage NMI-triggered entry to KGDB