linux/arch/x86/include/asm/kdebug.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef _ASM_X86_KDEBUG_H
   3#define _ASM_X86_KDEBUG_H
   4
   5#include <linux/notifier.h>
   6
   7struct pt_regs;
   8
   9/* Grossly misnamed. */
  10enum die_val {
  11        DIE_OOPS = 1,
  12        DIE_INT3,
  13        DIE_DEBUG,
  14        DIE_PANIC,
  15        DIE_NMI,
  16        DIE_DIE,
  17        DIE_KERNELDEBUG,
  18        DIE_TRAP,
  19        DIE_GPF,
  20        DIE_CALL,
  21        DIE_PAGE_FAULT,
  22        DIE_NMIUNKNOWN,
  23};
  24
  25enum show_regs_mode {
  26        SHOW_REGS_SHORT,
  27        /*
  28         * For when userspace crashed, but we don't think it's our fault, and
  29         * therefore don't print kernel registers.
  30         */
  31        SHOW_REGS_USER,
  32        SHOW_REGS_ALL
  33};
  34
  35extern void die(const char *, struct pt_regs *,long);
  36void die_addr(const char *str, struct pt_regs *regs, long err, long gp_addr);
  37extern int __must_check __die(const char *, struct pt_regs *, long);
  38extern void show_stack_regs(struct pt_regs *regs);
  39extern void __show_regs(struct pt_regs *regs, enum show_regs_mode,
  40                        const char *log_lvl);
  41extern void show_iret_regs(struct pt_regs *regs, const char *log_lvl);
  42extern unsigned long oops_begin(void);
  43extern void oops_end(unsigned long, struct pt_regs *, int signr);
  44
  45#endif /* _ASM_X86_KDEBUG_H */
  46