diff --git a/ChangeLog b/ChangeLog index 28ec6df0f3..99a560f233 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2018-09-14 Joseph Myers + [BZ #23656] + * sysdeps/unix/sysv/linux/mips/sys/procfs.h (struct elf_prstatus): + Remove [_MIPS_SIM = _ABIN32] conditional case. + (struct elf_prpsinfo): Likewise. + [BZ #23649] * sysdeps/unix/sysv/linux/microblaze/sys/procfs.h (struct elf_prpsinfo): Use unsigned int for pr_uid and pr_gid. diff --git a/NEWS b/NEWS index dbb86a73a3..f76ada94d3 100644 --- a/NEWS +++ b/NEWS @@ -31,6 +31,12 @@ Deprecated and removed features, and other changes affecting compatibility: the Linux kernel. This affects the size and layout of that structure on MicroBlaze, MIPS (n64 ABI only), Nios II and RISC-V. +* For the MIPS n32 ABI, the type of the pr_sigpend and pr_sighold members of + struct elf_prstatus, and the pr_flag member 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 those + structures. + Changes to build and runtime requirements: [Add changes to build and runtime requirements here] diff --git a/sysdeps/unix/sysv/linux/mips/sys/procfs.h b/sysdeps/unix/sysv/linux/mips/sys/procfs.h index 523317dec7..6c4227781a 100644 --- a/sysdeps/unix/sysv/linux/mips/sys/procfs.h +++ b/sysdeps/unix/sysv/linux/mips/sys/procfs.h @@ -64,13 +64,8 @@ struct elf_prstatus { struct elf_siginfo pr_info; /* Info associated with signal. */ short int pr_cursig; /* Current signal. */ -#if _MIPS_SIM == _ABIN32 - __extension__ unsigned long long int pr_sigpend; - __extension__ unsigned long long int pr_sighold; -#else unsigned long int pr_sigpend; /* Set of pending signals. */ unsigned long int pr_sighold; /* Set of held signals. */ -#endif __pid_t pr_pid; __pid_t pr_ppid; __pid_t pr_pgrp; @@ -92,11 +87,7 @@ struct elf_prpsinfo char pr_sname; /* Char for pr_state. */ char pr_zomb; /* Zombie. */ char pr_nice; /* Nice val. */ -#if _MIPS_SIM == _ABIN32 - __extension__ unsigned long long int pr_flag; -#else unsigned long int pr_flag; /* Flags. */ -#endif unsigned int pr_uid; unsigned int pr_gid; int pr_pid, pr_ppid, pr_pgrp, pr_sid;