--- zzzz-none-000/linux-2.4.17/include/asm-mips/siginfo.h 2000-05-25 01:38:26.000000000 +0000 +++ sangam-fb-322/linux-2.4.17/include/asm-mips/siginfo.h 2004-11-24 13:21:30.000000000 +0000 @@ -1,5 +1,4 @@ -/* $Id: siginfo.h,v 1.5 1999/08/18 23:37:49 ralf Exp $ - * +/* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. @@ -68,8 +67,9 @@ /* POSIX.1b timers */ struct { - unsigned int _timer1; - unsigned int _timer2; + timer_t _tid; /* timer id */ + int _overrun; /* overrun count */ + sigval_t _sigval; /* same as below */ } _timer; /* POSIX.1b signals */ @@ -87,6 +87,8 @@ */ #define si_pid _sifields._kill._pid #define si_uid _sifields._kill._uid +#define si_tid _sifields._timer._tid +#define si_overrun _sifields._timer._overrun #define si_status _sifields._sigchld._status #define si_utime _sifields._sigchld._utime #define si_stime _sifields._sigchld._stime @@ -105,7 +107,7 @@ #define __SI_FAULT (3 << 16) #define __SI_CHLD (4 << 16) #define __SI_RT (5 << 16) -#define __SI_CODE(T,N) ((T) << 16 | ((N) & 0xffff)) +#define __SI_CODE(T,N) ((T) | ((N) & 0xffff)) #else #define __SI_KILL 0 #define __SI_TIMER 0 @@ -213,6 +215,7 @@ #define SIGEV_SIGNAL 129 /* notify via signal */ #define SIGEV_CALLBACK 130 /* ??? */ #define SIGEV_THREAD 131 /* deliver via thread creation */ +#define SIGEV_THREAD_ID 132 /* deliver to thread */ #define SIGEV_MAX_SIZE 64 #define SIGEV_PAD_SIZE ((SIGEV_MAX_SIZE/sizeof(int)) - 4) @@ -224,7 +227,7 @@ int sigev_signo; union { int _pad[SIGEV_PAD_SIZE]; - + int _tid; struct { void (*_function)(sigval_t); void *_attribute; /* really pthread_attr_t */ @@ -234,11 +237,12 @@ #define sigev_notify_function _sigev_un._sigev_thread._function #define sigev_notify_attributes _sigev_un._sigev_thread._attribute +#define sigev_notify_thread_id _sigev_un._tid #ifdef __KERNEL__ #include -extern inline void copy_siginfo(siginfo_t *to, siginfo_t *from) +static inline void copy_siginfo(siginfo_t *to, siginfo_t *from) { if (from->si_code < 0) memcpy(to, from, sizeof(siginfo_t));