svn commit: branches/uClibc_0_9_29/libc/sysdeps/linux/sh/sys

vapier at uclibc.org vapier at uclibc.org
Sat Jan 5 09:24:47 PST 2008


Author: vapier
Date: 2008-01-05 09:24:47 -0800 (Sat, 05 Jan 2008)
New Revision: 20745

Log:
Merge r18817 by jocke from trunk:
Carmelo AMOROSO <carmelo.amoroso at st.com> writes:
Hi All,
this patch fixes a mismatch in ucontext struct between uClibc and kernel.
In this way a signal handler installed by sigaction can access
to the whole machine state correctly.
This can be applied both to trunk and nptl branch


Modified:
   branches/uClibc_0_9_29/libc/sysdeps/linux/sh/sys/ucontext.h


Changeset:
Modified: branches/uClibc_0_9_29/libc/sysdeps/linux/sh/sys/ucontext.h
===================================================================
--- branches/uClibc_0_9_29/libc/sysdeps/linux/sh/sys/ucontext.h	2008-01-05 17:24:32 UTC (rev 20744)
+++ branches/uClibc_0_9_29/libc/sysdeps/linux/sh/sys/ucontext.h	2008-01-05 17:24:47 UTC (rev 20745)
@@ -87,13 +87,25 @@
 /* Context to describe whole processor state.  */
 typedef struct
   {
+    unsigned int oldmask;
+	
+    /* CPU registers */
     gregset_t gregs;
+    unsigned int pc;
+    unsigned int pr;
+    unsigned int sr;
+    unsigned int gbr;
+    unsigned int mach;
+    unsigned int macl;
+
+#ifdef __CONFIG_SH4__
+    /* FPU registers */
     fpregset_t fpregs;
     fpregset_t xfpregs;
     unsigned int fpscr;
     unsigned int fpul;
-    unsigned int macl;
-    unsigned int mach;
+    unsigned int ownedfp;
+#endif	
   } mcontext_t;
 
 /* Userlevel context.  */



More information about the uClibc-cvs mailing list