diff --git a/ChangeLog b/ChangeLog index 6f71e67eb2..28ec6df0f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,17 @@ 2018-09-14 Joseph Myers + [BZ #23649] + * sysdeps/unix/sysv/linux/microblaze/sys/procfs.h (struct + elf_prpsinfo): Use unsigned int for pr_uid and pr_gid. + * sysdeps/unix/sysv/linux/mips/sys/procfs.h (struct elf_prpsinfo): + Likewise. + * sysdeps/unix/sysv/linux/nios2/sys/procfs.h (struct + elf_prpsinfo): Likewise. + * sysdeps/unix/sysv/linux/riscv/sys/procfs.h (struct + elf_prpsinfo): Likewise. + * sysdeps/unix/sysv/linux/sys/procfs.h (struct elf_prpsinfo): + Likewise. + * include/math.h [!_ISOMAC && !(__FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) && !NO_MATH_REDIRECT] (rint): Redirect using MATH_REDIRECT. diff --git a/NEWS b/NEWS index 04a0e89010..dbb86a73a3 100644 --- a/NEWS +++ b/NEWS @@ -26,6 +26,11 @@ Deprecated and removed features, and other changes affecting compatibility: * The glibc.tune tunable namespace has been renamed to glibc.cpu and the tunable glibc.tune.cpu has been renamed to glibc.cpu.name. +* The type of the pr_uid and pr_gid members of struct elf_prpsinfo, defined + in , has been corrected to match the type actually used by + the Linux kernel. This affects the size and layout of that structure on + MicroBlaze, MIPS (n64 ABI only), Nios II and RISC-V. + Changes to build and runtime requirements: [Add changes to build and runtime requirements here] diff --git a/sysdeps/unix/sysv/linux/microblaze/sys/procfs.h b/sysdeps/unix/sysv/linux/microblaze/sys/procfs.h index 17c52519e7..7a9832371e 100644 --- a/sysdeps/unix/sysv/linux/microblaze/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/microblaze/sys/procfs.h @@ -91,8 +91,8 @@ struct elf_prpsinfo char pr_zomb; /* Zombie. */ char pr_nice; /* Nice val. */ unsigned long int pr_flag; /* Flags. */ - unsigned short int pr_uid; - unsigned short int pr_gid; + unsigned int pr_uid; + unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid; /* Lots missing. */ char pr_fname[16]; /* Filename of executable. */ diff --git a/sysdeps/unix/sysv/linux/mips/sys/procfs.h b/sysdeps/unix/sysv/linux/mips/sys/procfs.h index 2be0c7e818..523317dec7 100644 --- a/sysdeps/unix/sysv/linux/mips/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/mips/sys/procfs.h @@ -97,8 +97,8 @@ struct elf_prpsinfo #else unsigned long int pr_flag; /* Flags. */ #endif - long pr_uid; - long pr_gid; + unsigned int pr_uid; + unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid; /* Lots missing */ char pr_fname[16]; /* Filename of executable. */ diff --git a/sysdeps/unix/sysv/linux/nios2/sys/procfs.h b/sysdeps/unix/sysv/linux/nios2/sys/procfs.h index a61fe96c6b..1bb18f1e58 100644 --- a/sysdeps/unix/sysv/linux/nios2/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/nios2/sys/procfs.h @@ -91,8 +91,8 @@ struct elf_prpsinfo char pr_zomb; /* Zombie. */ char pr_nice; /* Nice val. */ unsigned long int pr_flag; /* Flags. */ - unsigned short int pr_uid; - unsigned short int pr_gid; + unsigned int pr_uid; + unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid; /* Lots missing */ char pr_fname[16]; /* Filename of executable. */ diff --git a/sysdeps/unix/sysv/linux/riscv/sys/procfs.h b/sysdeps/unix/sysv/linux/riscv/sys/procfs.h index 518de56741..3abbecf957 100644 --- a/sysdeps/unix/sysv/linux/riscv/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/riscv/sys/procfs.h @@ -82,8 +82,8 @@ struct elf_prpsinfo char pr_zomb; /* Zombie. */ char pr_nice; /* Nice val. */ unsigned long int pr_flag; /* Flags. */ - long int pr_uid; - long int pr_gid; + unsigned int pr_uid; + unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid; /* Lots missing */ char pr_fname[16]; /* Filename of executable. */ diff --git a/sysdeps/unix/sysv/linux/sys/procfs.h b/sysdeps/unix/sysv/linux/sys/procfs.h index 3c417bab29..6af44c02ca 100644 --- a/sysdeps/unix/sysv/linux/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/sys/procfs.h @@ -86,8 +86,8 @@ struct elf_prpsinfo char pr_zomb; /* Zombie. */ char pr_nice; /* Nice val. */ unsigned long int pr_flag; /* Flags. */ - unsigned short int pr_uid; - unsigned short int pr_gid; + unsigned int pr_uid; + unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid; /* Lots missing */ char pr_fname[16]; /* Filename of executable. */