summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm/ucontext.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-08-05 02:25:06 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-08-05 02:25:06 +0200
commit2acb802b0c5485aedb46e23b2b45e49573454c09 (patch)
tree82afbba3d073ce903cb737412b6eccdf8adab4b5 /arch/powerpc/include/asm/ucontext.h
parentMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes (diff)
parentpowerpc: Remove use of CONFIG_PPC_MERGE (diff)
downloadlinux-2acb802b0c5485aedb46e23b2b45e49573454c09.tar.xz
linux-2acb802b0c5485aedb46e23b2b45e49573454c09.zip
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: powerpc: Remove use of CONFIG_PPC_MERGE powerpc: Force printing of 'total_memory' to unsigned long long powerpc: Fix compiler warning in arch/powerpc/mm/mem.c powerpc: Move include files to arch/powerpc/include/asm
Diffstat (limited to 'arch/powerpc/include/asm/ucontext.h')
-rw-r--r--arch/powerpc/include/asm/ucontext.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/ucontext.h b/arch/powerpc/include/asm/ucontext.h
new file mode 100644
index 000000000000..d9a4ddf0cc86
--- /dev/null
+++ b/arch/powerpc/include/asm/ucontext.h
@@ -0,0 +1,40 @@
+#ifndef _ASM_POWERPC_UCONTEXT_H
+#define _ASM_POWERPC_UCONTEXT_H
+
+#ifdef __powerpc64__
+#include <asm/sigcontext.h>
+#else
+#include <asm/elf.h>
+#endif
+#include <asm/signal.h>
+
+#ifndef __powerpc64__
+struct mcontext {
+ elf_gregset_t mc_gregs;
+ elf_fpregset_t mc_fregs;
+ unsigned long mc_pad[2];
+ elf_vrregset_t mc_vregs __attribute__((__aligned__(16)));
+};
+#endif
+
+struct ucontext {
+ unsigned long uc_flags;
+ struct ucontext __user *uc_link;
+ stack_t uc_stack;
+#ifndef __powerpc64__
+ int uc_pad[7];
+ struct mcontext __user *uc_regs;/* points to uc_mcontext field */
+#endif
+ sigset_t uc_sigmask;
+ /* glibc has 1024-bit signal masks, ours are 64-bit */
+#ifdef __powerpc64__
+ sigset_t __unused[15]; /* Allow for uc_sigmask growth */
+ struct sigcontext uc_mcontext; /* last for extensibility */
+#else
+ int uc_maskext[30];
+ int uc_pad2[3];
+ struct mcontext uc_mcontext;
+#endif
+};
+
+#endif /* _ASM_POWERPC_UCONTEXT_H */