Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/powerpc/include/uapi/asm/ucontext.h
26516 views
1
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2
#ifndef _ASM_POWERPC_UCONTEXT_H
3
#define _ASM_POWERPC_UCONTEXT_H
4
5
#ifdef __powerpc64__
6
#include <asm/sigcontext.h>
7
#else
8
#include <asm/elf.h>
9
#endif
10
#include <asm/signal.h>
11
12
#ifndef __powerpc64__
13
struct mcontext {
14
elf_gregset_t mc_gregs;
15
elf_fpregset_t mc_fregs;
16
unsigned long mc_pad[2];
17
elf_vrregset_t mc_vregs __attribute__((__aligned__(16)));
18
};
19
#endif
20
21
struct ucontext {
22
unsigned long uc_flags;
23
struct ucontext __user *uc_link;
24
stack_t uc_stack;
25
#ifndef __powerpc64__
26
int uc_pad[7];
27
struct mcontext __user *uc_regs;/* points to uc_mcontext field */
28
#endif
29
sigset_t uc_sigmask;
30
/* glibc has 1024-bit signal masks, ours are 64-bit */
31
#ifdef __powerpc64__
32
sigset_t __unused[15]; /* Allow for uc_sigmask growth */
33
struct sigcontext uc_mcontext; /* last for extensibility */
34
#else
35
int uc_maskext[30];
36
int uc_pad2[3];
37
struct mcontext uc_mcontext;
38
#endif
39
};
40
41
#endif /* _ASM_POWERPC_UCONTEXT_H */
42
43