From: Stephen Rothwell <sfr@canb.auug.org.au>

This patch just consolidates the last of the (what should have been)
compat_sigval_ts.  It also fixes S390 that had a sigval_t in its struct
compat_siginfo.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/ia64/ia32/ia32priv.h       |   11 +++--------
 25-akpm/arch/mips/kernel/signal32.c     |    7 +------
 25-akpm/arch/s390/kernel/compat_linux.h |    9 ++-------
 25-akpm/arch/sparc64/kernel/signal32.c  |    4 ++--
 25-akpm/include/asm-sparc64/siginfo.h   |    7 +------
 5 files changed, 9 insertions(+), 29 deletions(-)

diff -puN arch/ia64/ia32/ia32priv.h~consolidate-the-last-compat-sigvals arch/ia64/ia32/ia32priv.h
--- 25/arch/ia64/ia32/ia32priv.h~consolidate-the-last-compat-sigvals	Mon Mar  7 16:02:35 2005
+++ 25-akpm/arch/ia64/ia32/ia32priv.h	Mon Mar  7 16:02:35 2005
@@ -225,11 +225,6 @@ struct stat64 {
 	unsigned int	st_ino_hi;
 };
 
-typedef union sigval32 {
-	int sival_int;
-	unsigned int sival_ptr;
-} sigval_t32;
-
 typedef struct compat_siginfo {
 	int si_signo;
 	int si_errno;
@@ -249,7 +244,7 @@ typedef struct compat_siginfo {
 			timer_t _tid;		/* timer id */
 			int _overrun;		/* overrun count */
 			char _pad[sizeof(unsigned int) - sizeof(int)];
-			sigval_t32 _sigval;	/* same as below */
+			compat_sigval_t _sigval;	/* same as below */
 			int _sys_private;       /* not to be passed to user */
 		} _timer;
 
@@ -257,7 +252,7 @@ typedef struct compat_siginfo {
 		struct {
 			unsigned int _pid;	/* sender's pid */
 			unsigned int _uid;	/* sender's uid */
-			sigval_t32 _sigval;
+			compat_sigval_t _sigval;
 		} _rt;
 
 		/* SIGCHLD */
@@ -283,7 +278,7 @@ typedef struct compat_siginfo {
 } compat_siginfo_t;
 
 typedef struct sigevent32 {
-	sigval_t32 sigev_value;
+	compat_sigval_t sigev_value;
 	int sigev_signo;
 	int sigev_notify;
 	union {
diff -puN arch/mips/kernel/signal32.c~consolidate-the-last-compat-sigvals arch/mips/kernel/signal32.c
--- 25/arch/mips/kernel/signal32.c~consolidate-the-last-compat-sigvals	Mon Mar  7 16:02:35 2005
+++ 25-akpm/arch/mips/kernel/signal32.c	Mon Mar  7 16:02:35 2005
@@ -32,11 +32,6 @@
 
 #define SI_PAD_SIZE32   ((SI_MAX_SIZE/sizeof(int)) - 3)
 
-typedef union sigval32 {
-	int sival_int;
-	s32 sival_ptr;
-} sigval_t32;
-
 typedef struct compat_siginfo {
 	int si_signo;
 	int si_code;
@@ -89,7 +84,7 @@ typedef struct compat_siginfo {
 		struct {
 			compat_pid_t _pid;	/* sender's pid */
 			compat_uid_t _uid;	/* sender's uid */
-			sigval_t32 _sigval;
+			compat_sigval_t _sigval;
 		} _rt;
 
 	} _sifields;
diff -puN arch/s390/kernel/compat_linux.h~consolidate-the-last-compat-sigvals arch/s390/kernel/compat_linux.h
--- 25/arch/s390/kernel/compat_linux.h~consolidate-the-last-compat-sigvals	Mon Mar  7 16:02:35 2005
+++ 25-akpm/arch/s390/kernel/compat_linux.h	Mon Mar  7 16:02:35 2005
@@ -29,11 +29,6 @@ struct old_sigaction32 {
        __u32			sa_restorer;	/* Another 32 bit pointer */
 };
  
-typedef union sigval32 {
-        int     sival_int;
-        __u32   sival_ptr;
-} sigval_t32;
-                 
 typedef struct compat_siginfo {
 	int	si_signo;
 	int	si_errno;
@@ -52,7 +47,7 @@ typedef struct compat_siginfo {
 		struct {
 			timer_t _tid;		/* timer id */
 			int _overrun;		/* overrun count */
-			sigval_t _sigval;	/* same as below */
+			compat_sigval_t _sigval;	/* same as below */
 			int _sys_private;       /* not to be passed to user */
 		} _timer;
 
@@ -60,7 +55,7 @@ typedef struct compat_siginfo {
 		struct {
 			pid_t			_pid;	/* sender's pid */
 			uid_t			_uid;	/* sender's uid */
-			sigval_t32		_sigval;
+			compat_sigval_t		_sigval;
 		} _rt;
 
 		/* SIGCHLD */
diff -puN arch/sparc64/kernel/signal32.c~consolidate-the-last-compat-sigvals arch/sparc64/kernel/signal32.c
--- 25/arch/sparc64/kernel/signal32.c~consolidate-the-last-compat-sigvals	Mon Mar  7 16:02:35 2005
+++ 25-akpm/arch/sparc64/kernel/signal32.c	Mon Mar  7 16:02:35 2005
@@ -104,7 +104,7 @@ typedef struct compat_siginfo{
 		struct {
 			timer_t _tid;			/* timer id */
 			int _overrun;			/* overrun count */
-			sigval_t32 _sigval;		/* same as below */
+			compat_sigval_t _sigval;		/* same as below */
 			int _sys_private;		/* not to be passed to user */
 		} _timer;
 
@@ -112,7 +112,7 @@ typedef struct compat_siginfo{
 		struct {
 			compat_pid_t _pid;		/* sender's pid */
 			unsigned int _uid;		/* sender's uid */
-			sigval_t32 _sigval;
+			compat_sigval_t _sigval;
 		} _rt;
 
 		/* SIGCHLD */
diff -puN include/asm-sparc64/siginfo.h~consolidate-the-last-compat-sigvals include/asm-sparc64/siginfo.h
--- 25/include/asm-sparc64/siginfo.h~consolidate-the-last-compat-sigvals	Mon Mar  7 16:02:35 2005
+++ 25-akpm/include/asm-sparc64/siginfo.h	Mon Mar  7 16:02:35 2005
@@ -18,11 +18,6 @@
 
 #ifdef CONFIG_COMPAT
 
-typedef union sigval32 {
-	int sival_int;
-	u32 sival_ptr;
-} sigval_t32;
-
 struct compat_siginfo;
 
 #endif /* CONFIG_COMPAT */
@@ -42,7 +37,7 @@ struct compat_siginfo;
 #ifdef CONFIG_COMPAT
 
 typedef struct sigevent32 {
-	sigval_t32 sigev_value;
+	compat_sigval_t sigev_value;
 	int sigev_signo;
 	int sigev_notify;
 	union {
_