sigframe.h 815 B

1234567891011121314151617181920212223242526
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. struct sigscratch {
  3. unsigned long scratch_unat; /* ar.unat for the general registers saved in pt */
  4. unsigned long ar_pfs; /* for syscalls, the user-level function-state */
  5. struct pt_regs pt;
  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. void __user *handler; /* pointer to the plabel of the signal handler */
  20. struct siginfo info;
  21. struct sigcontext sc;
  22. };
  23. extern void ia64_do_signal (struct sigscratch *, long);