1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
  
     | 
    
      #include <inttypes.h>
#include <signal.h>
#include <stddef.h>
#include <sys/ucontext.h>
#include <asm/sigcontext.h>
#include "kernel_rt_sigframe.h"
SIG_BLOCK
SIG_SETMASK
_NSIG8				(_NSIG / 8)
-- Offsets of the fields in the kernel rt_sigframe_t structure.
#define rt_sigframe(member)	offsetof (struct kernel_rt_sigframe, member)
RT_SIGFRAME_UCONTEXT		rt_sigframe (uc)
RT_SIGFRAME_SIZE		sizeof (struct kernel_rt_sigframe)
FPSIMD_CONTEXT_SIZE             sizeof (struct fpsimd_context)
#define ucontext(member)	offsetof (ucontext_t, member)
#define stack(member)		ucontext (uc_stack.member)
#define mcontext(member)	ucontext (uc_mcontext.member)
UCONTEXT_FLAGS			ucontext (uc_flags)
UCONTEXT_LINK			ucontext (uc_link)
UCONTEXT_STACK			ucontext (uc_stack)
UCONTEXT_MCONTEXT		ucontext (uc_mcontext)
UCONTEXT_SIGMASK		ucontext (uc_sigmask)
UCONTEXT_SIZE			sizeof (ucontext_t)
STACK_SP			stack (ss_sp)
STACK_SIZE			stack (ss_size)
STACK_FLAGS			stack (ss_flags)
oX0				mcontext (regs)
oSP				mcontext (sp)
oPC				mcontext (pc)
oPSTATE				mcontext (pstate)
oEXTENSION                      mcontext (__reserved)
#define fpsimd_context(member)  offsetof (struct fpsimd_context, member)
oHEAD                           fpsimd_context (head)
oV0                             fpsimd_context (vregs)
oFPSR                           fpsimd_context (fpsr)
oFPCR                           fpsimd_context (fpcr)
#define aarch64_ctx(member)  offsetof (struct _aarch64_ctx, member)
oMAGIC                          aarch64_ctx (magic)
oSIZE                           aarch64_ctx (size)
FPSIMD_MAGIC
 
     |