bug.h (e5451c8f8330e03ad3cfa16048b4daf961af434f) bug.h (19d436268dde95389c616bb3819da73f0a8b28a8)
1#ifndef _PARISC_BUG_H
2#define _PARISC_BUG_H
3
4#include <linux/kernel.h> /* for BUGFLAG_TAINT */
5
6/*
7 * Tell the user there is some problem.
8 * The offending file and line are encoded in the __bug_table section.

--- 32 unchanged lines hidden (view full) ---

41#define BUG() \
42 do { \
43 asm volatile(PARISC_BUG_BREAK_ASM : : ); \
44 unreachable(); \
45 } while(0)
46#endif
47
48#ifdef CONFIG_DEBUG_BUGVERBOSE
1#ifndef _PARISC_BUG_H
2#define _PARISC_BUG_H
3
4#include <linux/kernel.h> /* for BUGFLAG_TAINT */
5
6/*
7 * Tell the user there is some problem.
8 * The offending file and line are encoded in the __bug_table section.

--- 32 unchanged lines hidden (view full) ---

41#define BUG() \
42 do { \
43 asm volatile(PARISC_BUG_BREAK_ASM : : ); \
44 unreachable(); \
45 } while(0)
46#endif
47
48#ifdef CONFIG_DEBUG_BUGVERBOSE
49#define __WARN_TAINT(taint) \
49#define __WARN_FLAGS(flags) \
50 do { \
51 asm volatile("\n" \
52 "1:\t" PARISC_BUG_BREAK_ASM "\n" \
53 "\t.pushsection __bug_table,\"a\"\n" \
54 "2:\t" ASM_WORD_INSN "1b, %c0\n" \
55 "\t.short %c1, %c2\n" \
56 "\t.org 2b+%c3\n" \
57 "\t.popsection" \
58 : : "i" (__FILE__), "i" (__LINE__), \
50 do { \
51 asm volatile("\n" \
52 "1:\t" PARISC_BUG_BREAK_ASM "\n" \
53 "\t.pushsection __bug_table,\"a\"\n" \
54 "2:\t" ASM_WORD_INSN "1b, %c0\n" \
55 "\t.short %c1, %c2\n" \
56 "\t.org 2b+%c3\n" \
57 "\t.popsection" \
58 : : "i" (__FILE__), "i" (__LINE__), \
59 "i" (BUGFLAG_TAINT(taint)), \
59 "i" (BUGFLAG_WARNING|(flags)), \
60 "i" (sizeof(struct bug_entry)) ); \
61 } while(0)
62#else
60 "i" (sizeof(struct bug_entry)) ); \
61 } while(0)
62#else
63#define __WARN_TAINT(taint) \
63#define __WARN_FLAGS(flags) \
64 do { \
65 asm volatile("\n" \
66 "1:\t" PARISC_BUG_BREAK_ASM "\n" \
67 "\t.pushsection __bug_table,\"a\"\n" \
68 "2:\t" ASM_WORD_INSN "1b\n" \
69 "\t.short %c0\n" \
70 "\t.org 2b+%c1\n" \
71 "\t.popsection" \
64 do { \
65 asm volatile("\n" \
66 "1:\t" PARISC_BUG_BREAK_ASM "\n" \
67 "\t.pushsection __bug_table,\"a\"\n" \
68 "2:\t" ASM_WORD_INSN "1b\n" \
69 "\t.short %c0\n" \
70 "\t.org 2b+%c1\n" \
71 "\t.popsection" \
72 : : "i" (BUGFLAG_TAINT(taint)), \
72 : : "i" (BUGFLAG_WARNING|(flags)), \
73 "i" (sizeof(struct bug_entry)) ); \
74 } while(0)
75#endif
76
77
78#define WARN_ON(x) ({ \
79 int __ret_warn_on = !!(x); \
80 if (__builtin_constant_p(__ret_warn_on)) { \

--- 14 unchanged lines hidden ---
73 "i" (sizeof(struct bug_entry)) ); \
74 } while(0)
75#endif
76
77
78#define WARN_ON(x) ({ \
79 int __ret_warn_on = !!(x); \
80 if (__builtin_constant_p(__ret_warn_on)) { \

--- 14 unchanged lines hidden ---