Hello, Since the following change: http://www.linux-mips.org/cvsweb/linux/include/asm-mips/siginfo.h.diff?r1=1.4&r2=1.5&only_with_tag=MAIN dated back to Aug 1999 (!), the definitions of struct siginfo in Linux and GNU libc differ to each other. While it's the kernel that is at fault by changing its ABI, at this stage it may be more acceptable to update glibc as it's not the only program interfacing to Linux (uClibc?). It doesn't seem to be a heavily used feature as otherwise someone else would have noticed the problem during these five years. As I don't really have a preference, hereby I provide two patches to choose from and ask for voting. The ChangeLog entry is for glibc, of course. 2004-11-10 Maciej W. Rozycki <macro@xxxxxxxxxxxxxx> * sysdeps/unix/sysv/linux/mips/bits/siginfo.h [struct siginfo] (_sigchld): Update to match the kernel. Maciej glibc-2.3.3-20041018-mips-siginfo_sigchld-1.patch diff -up --recursive --new-file glibc-2.3.3-20041018.macro/sysdeps/unix/sysv/linux/bits/siginfo.h glibc-2.3.3-20041018/sysdeps/unix/sysv/linux/bits/siginfo.h --- glibc-2.3.3-20041018.macro/sysdeps/unix/sysv/linux/bits/siginfo.h Tue Apr 22 02:26:04 2003 +++ glibc-2.3.3-20041018/sysdeps/unix/sysv/linux/bits/siginfo.h Wed Nov 10 16:52:24 2004 @@ -1,5 +1,5 @@ /* siginfo_t, sigevent and constants. Linux version. - Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1997-2002, 2003, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -87,8 +87,8 @@ typedef struct siginfo { __pid_t si_pid; /* Which child. */ __uid_t si_uid; /* Real user ID of sending process. */ - int si_status; /* Exit value or signal. */ __clock_t si_utime; + int si_status; /* Exit value or signal. */ __clock_t si_stime; } _sigchld; patch-malta-2.6.9-rc1-20041020-mips-siginfo_sigchld-0 diff -up --recursive --new-file linux-malta-2.6.9-rc1-20041020.macro/include/asm-mips/siginfo.h linux-malta-2.6.9-rc1-20041020/include/asm-mips/siginfo.h --- linux-malta-2.6.9-rc1-20041020.macro/include/asm-mips/siginfo.h 2004-10-01 14:49:33.000000000 +0000 +++ linux-malta-2.6.9-rc1-20041020/include/asm-mips/siginfo.h 2004-11-10 16:53:42.000000000 +0000 @@ -47,8 +47,8 @@ typedef struct siginfo { struct { pid_t _pid; /* which child */ uid_t _uid; /* sender's uid */ - clock_t _utime; int _status; /* exit code */ + clock_t _utime; clock_t _stime; } _sigchld;