blob: 54a5c50132e35e4000e45f874c6c1618894b9f9f [file] [log] [blame]
Jonas Bonnac689eb2011-06-04 21:38:59 +03001/*
2 * OpenRISC Linux
3 *
4 * Linux architectural port borrowing liberally from similar works of
5 * others. All original copyrights apply as per the original source
6 * declaration.
7 *
8 * OpenRISC implementation:
9 * Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com>
10 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
11 * et al.
12 *
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option) any later version.
17 */
18
19#ifndef __ASM_OPENRISC_SIGCONTEXT_H
20#define __ASM_OPENRISC_SIGCONTEXT_H
21
22#include <asm/ptrace.h>
23
24/* This struct is saved by setup_frame in signal.c, to keep the current
25 context while a signal handler is executed. It's restored by sys_sigreturn.
26
27 To keep things simple, we use pt_regs here even though normally you just
28 specify the list of regs to save. Then we can use copy_from_user on the
29 entire regs instead of a bunch of get_user's as well...
30*/
31
32struct sigcontext {
33 struct pt_regs regs; /* needs to be first */
34 unsigned long oldmask;
35 unsigned long usp; /* usp before stacking this gunk on it */
36};
37
38#endif /* __ASM_OPENRISC_SIGCONTEXT_H */