aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2018-01-13 19:25:09 -0500
committerEric W. Biederman <ebiederm@xmission.com>2018-01-15 18:42:35 -0500
commit71ee78d538a7bcb7a876dcbd65eb73627425df6f (patch)
tree8f68f79851b83c3b1f28c9a523cbd4126ea7cccd /include
parent753e5a8543dae136142751961bb18ff25b0062dc (diff)
signal/blackfin: Move the blackfin specific si_codes to asm-generic/siginfo.h
Having si_codes in many different files simply encourages duplicate definitions that can cause problems later. To avoid that merge the blackfin specific si_codes into uapi/asm-generic/siginfo.h Update copy_siginfo_to_user to copy with the absence of BUS_MCEERR_AR that blackfin defines to be something else. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'include')
-rw-r--r--include/uapi/asm-generic/siginfo.h29
1 files changed, 27 insertions, 2 deletions
diff --git a/include/uapi/asm-generic/siginfo.h b/include/uapi/asm-generic/siginfo.h
index 7a268db1c44f..254afc31e3be 100644
--- a/include/uapi/asm-generic/siginfo.h
+++ b/include/uapi/asm-generic/siginfo.h
@@ -179,13 +179,24 @@ typedef struct siginfo {
179 * SIGILL si_codes 179 * SIGILL si_codes
180 */ 180 */
181#define ILL_ILLOPC 1 /* illegal opcode */ 181#define ILL_ILLOPC 1 /* illegal opcode */
182#ifdef __bfin__
183# define ILL_ILLPARAOP 2 /* illegal opcode combine */
184#endif
182#define ILL_ILLOPN 2 /* illegal operand */ 185#define ILL_ILLOPN 2 /* illegal operand */
183#define ILL_ILLADR 3 /* illegal addressing mode */ 186#define ILL_ILLADR 3 /* illegal addressing mode */
184#define ILL_ILLTRP 4 /* illegal trap */ 187#define ILL_ILLTRP 4 /* illegal trap */
188#ifdef __bfin__
189# define ILL_ILLEXCPT 4 /* unrecoverable exception */
190#endif
185#define ILL_PRVOPC 5 /* privileged opcode */ 191#define ILL_PRVOPC 5 /* privileged opcode */
186#define ILL_PRVREG 6 /* privileged register */ 192#define ILL_PRVREG 6 /* privileged register */
187#define ILL_COPROC 7 /* coprocessor error */ 193#define ILL_COPROC 7 /* coprocessor error */
188#define ILL_BADSTK 8 /* internal stack error */ 194#define ILL_BADSTK 8 /* internal stack error */
195#ifdef __bfin__
196# define ILL_CPLB_VI 9 /* D/I CPLB protect violation */
197# define ILL_CPLB_MISS 10 /* D/I CPLB miss */
198# define ILL_CPLB_MULHIT 11 /* D/I CPLB multiple hit */
199#endif
189#ifdef __tile__ 200#ifdef __tile__
190# define ILL_DBLFLT 9 /* double fault */ 201# define ILL_DBLFLT 9 /* double fault */
191# define ILL_HARDWALL 10 /* user networks hardwall violation */ 202# define ILL_HARDWALL 10 /* user networks hardwall violation */
@@ -225,7 +236,11 @@ typedef struct siginfo {
225 */ 236 */
226#define SEGV_MAPERR 1 /* address not mapped to object */ 237#define SEGV_MAPERR 1 /* address not mapped to object */
227#define SEGV_ACCERR 2 /* invalid permissions for mapped object */ 238#define SEGV_ACCERR 2 /* invalid permissions for mapped object */
228#define SEGV_BNDERR 3 /* failed address bound checks */ 239#ifdef __bfin__
240# define SEGV_STACKFLOW 3 /* stack overflow */
241#else
242# define SEGV_BNDERR 3 /* failed address bound checks */
243#endif
229#ifdef __ia64__ 244#ifdef __ia64__
230# define __SEGV_PSTKOVF 4 /* paragraph stack overflow */ 245# define __SEGV_PSTKOVF 4 /* paragraph stack overflow */
231#else 246#else
@@ -239,8 +254,12 @@ typedef struct siginfo {
239#define BUS_ADRALN 1 /* invalid address alignment */ 254#define BUS_ADRALN 1 /* invalid address alignment */
240#define BUS_ADRERR 2 /* non-existent physical address */ 255#define BUS_ADRERR 2 /* non-existent physical address */
241#define BUS_OBJERR 3 /* object specific hardware error */ 256#define BUS_OBJERR 3 /* object specific hardware error */
257#ifdef __bfin__
258# define BUS_OPFETCH 4 /* error from instruction fetch */
259#else
242/* hardware memory error consumed on a machine check: action required */ 260/* hardware memory error consumed on a machine check: action required */
243#define BUS_MCEERR_AR 4 261# define BUS_MCEERR_AR 4
262#endif
244/* hardware memory error detected in process but not consumed: action optional*/ 263/* hardware memory error detected in process but not consumed: action optional*/
245#define BUS_MCEERR_AO 5 264#define BUS_MCEERR_AO 5
246#define NSIGBUS 5 265#define NSIGBUS 5
@@ -252,6 +271,12 @@ typedef struct siginfo {
252#define TRAP_TRACE 2 /* process trace trap */ 271#define TRAP_TRACE 2 /* process trace trap */
253#define TRAP_BRANCH 3 /* process taken branch trap */ 272#define TRAP_BRANCH 3 /* process taken branch trap */
254#define TRAP_HWBKPT 4 /* hardware breakpoint/watchpoint */ 273#define TRAP_HWBKPT 4 /* hardware breakpoint/watchpoint */
274#ifdef __bfin__
275# define TRAP_STEP 1 /* single-step breakpoint */
276# define TRAP_TRACEFLOW 2 /* trace buffer overflow */
277# define TRAP_WATCHPT 3 /* watchpoint match */
278# define TRAP_ILLTRAP 4 /* illegal trap */
279#endif
255#define NSIGTRAP 4 280#define NSIGTRAP 4
256 281
257/* 282/*