]>
Commit | Line | Data |
---|---|---|
7664c5a1 JF |
1 | #ifndef _LINUX_BUG_H |
2 | #define _LINUX_BUG_H | |
3 | ||
7664c5a1 JF |
4 | #include <asm/bug.h> |
5 | ||
6 | enum bug_trap_type { | |
7 | BUG_TRAP_TYPE_NONE = 0, | |
8 | BUG_TRAP_TYPE_WARN = 1, | |
9 | BUG_TRAP_TYPE_BUG = 2, | |
10 | }; | |
11 | ||
608e2619 HC |
12 | struct pt_regs; |
13 | ||
7664c5a1 JF |
14 | #ifdef CONFIG_GENERIC_BUG |
15 | #include <asm-generic/bug.h> | |
16 | ||
17 | static inline int is_warning_bug(const struct bug_entry *bug) | |
18 | { | |
19 | return bug->flags & BUGFLAG_WARNING; | |
20 | } | |
21 | ||
22 | const struct bug_entry *find_bug(unsigned long bugaddr); | |
23 | ||
608e2619 | 24 | enum bug_trap_type report_bug(unsigned long bug_addr, struct pt_regs *regs); |
7664c5a1 | 25 | |
7664c5a1 JF |
26 | /* These are defined by the architecture */ |
27 | int is_valid_bugaddr(unsigned long addr); | |
28 | ||
29 | #else /* !CONFIG_GENERIC_BUG */ | |
30 | ||
608e2619 HC |
31 | static inline enum bug_trap_type report_bug(unsigned long bug_addr, |
32 | struct pt_regs *regs) | |
7664c5a1 JF |
33 | { |
34 | return BUG_TRAP_TYPE_BUG; | |
35 | } | |
7664c5a1 JF |
36 | |
37 | #endif /* CONFIG_GENERIC_BUG */ | |
38 | #endif /* _LINUX_BUG_H */ |