~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/mips/include/uapi/asm/ucontext.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2 #ifndef __MIPS_UAPI_ASM_UCONTEXT_H
  3 #define __MIPS_UAPI_ASM_UCONTEXT_H
  4 
  5 /**
  6  * struct extcontext - extended context header structure
  7  * @magic:      magic value identifying the type of extended context
  8  * @size:       the size in bytes of the enclosing structure
  9  *
 10  * Extended context structures provide context which does not fit within struct
 11  * sigcontext. They are placed sequentially in memory at the end of struct
 12  * ucontext and struct sigframe, with each extended context structure beginning
 13  * with a header defined by this struct. The type of context represented is
 14  * indicated by the magic field. Userland may check each extended context
 15  * structure against magic values that it recognises. The size field allows any
 16  * unrecognised context to be skipped, allowing for future expansion. The end
 17  * of the extended context data is indicated by the magic value
 18  * END_EXTCONTEXT_MAGIC.
 19  */
 20 struct extcontext {
 21         unsigned int            magic;
 22         unsigned int            size;
 23 };
 24 
 25 /**
 26  * struct msa_extcontext - MSA extended context structure
 27  * @ext:        the extended context header, with magic == MSA_EXTCONTEXT_MAGIC
 28  * @wr:         the most significant 64 bits of each MSA vector register
 29  * @csr:        the value of the MSA control & status register
 30  *
 31  * If MSA context is live for a task at the time a signal is delivered to it,
 32  * this structure will hold the MSA context of the task as it was prior to the
 33  * signal delivery.
 34  */
 35 struct msa_extcontext {
 36         struct extcontext       ext;
 37 #define MSA_EXTCONTEXT_MAGIC    0x784d5341      /* xMSA */
 38 
 39         unsigned long long      wr[32];
 40         unsigned int            csr;
 41 };
 42 
 43 #define END_EXTCONTEXT_MAGIC    0x78454e44      /* xEND */
 44 
 45 /**
 46  * struct ucontext - user context structure
 47  * @uc_flags:
 48  * @uc_link:
 49  * @uc_stack:
 50  * @uc_mcontext:        holds basic processor state
 51  * @uc_sigmask:
 52  * @uc_extcontext:      holds extended processor state
 53  */
 54 struct ucontext {
 55         /* Historic fields matching asm-generic */
 56         unsigned long           uc_flags;
 57         struct ucontext         *uc_link;
 58         stack_t                 uc_stack;
 59         struct sigcontext       uc_mcontext;
 60         sigset_t                uc_sigmask;
 61 
 62         /* Extended context structures may follow ucontext */
 63         unsigned long long      uc_extcontext[];
 64 };
 65 
 66 #endif /* __MIPS_UAPI_ASM_UCONTEXT_H */
 67 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php