arm64: uaccess: Fix omissions from usercopy whitelist
[sfrench/cifs-2.6.git] / arch / cris / include / arch-v32 / arch / bug.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __ASM_CRISv32_ARCH_BUG_H
3 #define __ASM_CRISv32_ARCH_BUG_H
4
5 #include <linux/stringify.h>
6
7 #ifdef CONFIG_BUG
8 #ifdef CONFIG_DEBUG_BUGVERBOSE
9 /*
10  * The penalty for the in-band code path will be the size of break 14.
11  * All other stuff is done out-of-band with exception handlers.
12  */
13 #define BUG()                                                           \
14 do {                                                                    \
15         __asm__ __volatile__ ("0: break 14\n\t"                         \
16                               ".section .fixup,\"ax\"\n"                \
17                               "1:\n\t"                                  \
18                               "move.d %0, $r10\n\t"                     \
19                               "move.d %1, $r11\n\t"                     \
20                               "jump do_BUG\n\t"                         \
21                               "nop\n\t"                                 \
22                               ".previous\n\t"                           \
23                               ".section __ex_table,\"a\"\n\t"           \
24                               ".dword 0b, 1b\n\t"                       \
25                               ".previous\n\t"                           \
26                               : : "ri" (__FILE__), "i" (__LINE__));     \
27         unreachable();                          \
28 } while (0)
29 #else
30 #define BUG()                                   \
31 do {                                            \
32         __asm__ __volatile__ ("break 14\n\t");  \
33         unreachable();                          \
34 } while (0)
35 #endif
36
37 #define HAVE_ARCH_BUG
38 #endif
39
40 #include <asm-generic/bug.h>
41 #endif