26 lines
776 B
C
26 lines
776 B
C
|
struct sigscratch {
|
||
|
unsigned long scratch_unat; /* ar.unat for the general registers saved in pt */
|
||
|
unsigned long ar_pfs; /* for syscalls, the user-level function-state */
|
||
|
struct pt_regs pt;
|
||
|
};
|
||
|
|
||
|
struct sigframe {
|
||
|
/*
|
||
|
* Place signal handler args where user-level unwinder can find them easily.
|
||
|
* DO NOT MOVE THESE. They are part of the IA-64 Linux ABI and there is
|
||
|
* user-level code that depends on their presence!
|
||
|
*/
|
||
|
unsigned long arg0; /* signum */
|
||
|
unsigned long arg1; /* siginfo pointer */
|
||
|
unsigned long arg2; /* sigcontext pointer */
|
||
|
/*
|
||
|
* End of architected state.
|
||
|
*/
|
||
|
|
||
|
void __user *handler; /* pointer to the plabel of the signal handler */
|
||
|
struct siginfo info;
|
||
|
struct sigcontext sc;
|
||
|
};
|
||
|
|
||
|
extern void ia64_do_signal (struct sigscratch *, long);
|