diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-02-16 22:24:16 +0100 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 20:30:36 +0200 |
commit | a982099ca5465dd848d8ae28a83a3e49ac7b612b (patch) | |
tree | f2f372fbf2c07d83bfaa325638468c99e61f3807 /arch/mips/kernel/signal32.c | |
parent | 32-bit compatibility for ptrace GETEVENTMSG operation. (diff) | |
download | linux-a982099ca5465dd848d8ae28a83a3e49ac7b612b.tar.xz linux-a982099ca5465dd848d8ae28a83a3e49ac7b612b.zip |
Update to match the native siginfo structure and code.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/signal32.c')
-rw-r--r-- | arch/mips/kernel/signal32.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c index d50daee51fba..18c028ba9efa 100644 --- a/arch/mips/kernel/signal32.c +++ b/arch/mips/kernel/signal32.c @@ -76,8 +76,10 @@ typedef struct compat_siginfo { /* POSIX.1b timers */ struct { - unsigned int _timer1; - unsigned int _timer2; + timer_t _tid; /* timer id */ + int _overrun; /* overrun count */ + sigval_t32 _sigval; /* same as below */ + int _sys_private; /* not to be passed to user */ } _timer; /* POSIX.1b signals */ @@ -411,6 +413,11 @@ int copy_siginfo_to_user32(compat_siginfo_t *to, siginfo_t *from) err |= __copy_to_user(&to->_sifields._pad, &from->_sifields._pad, SI_PAD_SIZE); else { switch (from->si_code >> 16) { + case __SI_TIMER >> 16: + err |= __put_user(from->si_tid, &to->si_tid); + err |= __put_user(from->si_overrun, &to->si_overrun); + err |= __put_user(from->si_int, &to->si_int); + break; case __SI_CHLD >> 16: err |= __put_user(from->si_utime, &to->si_utime); err |= __put_user(from->si_stime, &to->si_stime); |