xref: /openbmc/linux/arch/ia64/kernel/sigframe.h (revision 588b48ca)
1 struct sigscratch {
2 	unsigned long scratch_unat;	/* ar.unat for the general registers saved in pt */
3 	unsigned long ar_pfs;		/* for syscalls, the user-level function-state  */
4 	struct pt_regs pt;
5 };
6 
7 struct sigframe {
8 	/*
9 	 * Place signal handler args where user-level unwinder can find them easily.
10 	 * DO NOT MOVE THESE.  They are part of the IA-64 Linux ABI and there is
11 	 * user-level code that depends on their presence!
12 	 */
13 	unsigned long arg0;		/* signum */
14 	unsigned long arg1;		/* siginfo pointer */
15 	unsigned long arg2;		/* sigcontext pointer */
16 	/*
17 	 * End of architected state.
18 	 */
19 
20 	void __user *handler;		/* pointer to the plabel of the signal handler */
21 	struct siginfo info;
22 	struct sigcontext sc;
23 };
24 
25 extern void ia64_do_signal (struct sigscratch *, long);
26