mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-27 03:41:23 +08:00
Fix a bug in 'Remove __need macros from signal.h' (a992f506
)
siginfo-arch.h is included in two different places, so the default definitions of the macros that it might or might not define need to be done conditionally afterward, not unconditionally beforehand. * sysdeps/unix/sysv/linux/bits/siginfo-consts.h (__SI_ASYNCIO_AFTER_SIGIO): Define default after including bits/siginfo-arch.h, only if not already defined. * sysdeps/unix/sysv/linux/bits/types/siginfo_t.h (__SI_ALIGNMENT, __SI_BAND_TYPE, __SI_CLOCK_T) (__SI_ERRNO_THEN_CODE, __SI_HAVE_SIGSYS, __SI_SEGFAULT_ADDL): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/siginfo-arch.h * sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h * sysdeps/unix/sysv/linux/sparc/bits/siginfo-arch.h * sysdeps/unix/sysv/linux/tile/bits/siginfo-arch.h * sysdeps/unix/sysv/linux/x86/bits/siginfo-arch.h: Unconditionally define __SI_* macros.
This commit is contained in:
parent
f1a67a2c78
commit
231a59ce2c
17
ChangeLog
17
ChangeLog
@ -1,3 +1,20 @@
|
||||
2017-05-22 Zack Weinberg <zackw@panix.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/bits/siginfo-consts.h
|
||||
(__SI_ASYNCIO_AFTER_SIGIO): Define default after including
|
||||
bits/siginfo-arch.h, only if not already defined.
|
||||
* sysdeps/unix/sysv/linux/bits/types/siginfo_t.h
|
||||
(__SI_ALIGNMENT, __SI_BAND_TYPE, __SI_CLOCK_T)
|
||||
(__SI_ERRNO_THEN_CODE, __SI_HAVE_SIGSYS, __SI_SEGFAULT_ADDL):
|
||||
Likewise.
|
||||
|
||||
* sysdeps/unix/sysv/linux/ia64/bits/siginfo-arch.h
|
||||
* sysdeps/unix/sysv/linux/mips/bits/siginfo-arch.h
|
||||
* sysdeps/unix/sysv/linux/sparc/bits/siginfo-arch.h
|
||||
* sysdeps/unix/sysv/linux/tile/bits/siginfo-arch.h
|
||||
* sysdeps/unix/sysv/linux/x86/bits/siginfo-arch.h:
|
||||
Unconditionally define __SI_* macros.
|
||||
|
||||
2017-05-22 Adhemerval Zanella <adhemerval.zanella@linaro.org>
|
||||
|
||||
[BZ #21393]
|
||||
|
@ -25,8 +25,10 @@
|
||||
|
||||
/* Most of these constants are uniform across all architectures, but there
|
||||
is one exception. */
|
||||
#define __SI_ASYNCIO_AFTER_SIGIO 1
|
||||
#include <bits/siginfo-arch.h>
|
||||
#ifndef __SI_ASYNCIO_AFTER_SIGIO
|
||||
# define __SI_ASYNCIO_AFTER_SIGIO 1
|
||||
#endif
|
||||
|
||||
/* Values for `si_code'. Positive values are reserved for kernel-generated
|
||||
signals. */
|
||||
|
@ -13,13 +13,25 @@
|
||||
#endif
|
||||
|
||||
/* Some fields of siginfo_t have architecture-specific variations. */
|
||||
#define __SI_ALIGNMENT /* nothing */
|
||||
#define __SI_BAND_TYPE long int
|
||||
#define __SI_CLOCK_T __clock_t
|
||||
#define __SI_ERRNO_THEN_CODE 1
|
||||
#define __SI_HAVE_SIGSYS 1
|
||||
#define __SI_SIGFAULT_ADDL /* nothing */
|
||||
#include <bits/siginfo-arch.h>
|
||||
#ifndef __SI_ALIGNMENT
|
||||
# define __SI_ALIGNMENT /* nothing */
|
||||
#endif
|
||||
#ifndef __SI_BAND_TYPE
|
||||
# define __SI_BAND_TYPE long int
|
||||
#endif
|
||||
#ifndef __SI_CLOCK_T
|
||||
# define __SI_CLOCK_T __clock_t
|
||||
#endif
|
||||
#ifndef __SI_ERRNO_THEN_CODE
|
||||
# define __SI_ERRNO_THEN_CODE 1
|
||||
#endif
|
||||
#ifndef __SI_HAVE_SIGSYS
|
||||
# define __SI_HAVE_SIGSYS 1
|
||||
#endif
|
||||
#ifndef __SI_SIGFAULT_ADDL
|
||||
# define __SI_SIGFAULT_ADDL /* nothing */
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
|
@ -1,10 +1,8 @@
|
||||
/* Architecture-specific adjustments to siginfo_t. ia64 version. */
|
||||
#ifndef _BITS_SIGINFO_ARCH_H
|
||||
|
||||
#undef __SI_HAVE_SIGSYS
|
||||
#define __SI_HAVE_SIGSYS 0
|
||||
|
||||
#undef __SI_SIGFAULT_ADDL
|
||||
#define __SI_SIGFAULT_ADDL \
|
||||
int _si_imm; \
|
||||
unsigned int _si_flags; \
|
||||
|
@ -4,12 +4,10 @@
|
||||
|
||||
/* MIPS has the si_code and si_errno fields in the opposite order from
|
||||
all other architectures. */
|
||||
#undef __SI_ERRNO_THEN_CODE
|
||||
#define __SI_ERRNO_THEN_CODE 0
|
||||
|
||||
/* MIPS also has different values for SI_ASYNCIO, SI_MESGQ, and SI_TIMER
|
||||
than all other architectures. */
|
||||
#undef __SI_ASYNCIO_AFTER_SIGIO
|
||||
#define __SI_ASYNCIO_AFTER_SIGIO 0
|
||||
|
||||
#endif
|
||||
|
@ -2,10 +2,8 @@
|
||||
#ifndef _BITS_SIGINFO_ARCH_H
|
||||
#define _BITS_SIGINFO_ARCH_H 1
|
||||
|
||||
#undef __SI_BAND_TYPE
|
||||
#define __SI_BAND_TYPE int
|
||||
|
||||
#undef __SI_SIGFAULT_ADDL
|
||||
#define __SI_SIGFAULT_ADDL \
|
||||
int _si_trapno;
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
#ifndef _BITS_SIGINFO_ARCH_H
|
||||
#define _BITS_SIGINFO_ARCH_H 1
|
||||
|
||||
#undef __SI_SIGFAULT_ADDL
|
||||
#define __SI_SIGFAULT_ADDL \
|
||||
int _si_trapno;
|
||||
|
||||
|
@ -10,9 +10,7 @@
|
||||
attribute would be ignored if it were put in __SI_CLOCK_T instead
|
||||
of encapsulated in a typedef. */
|
||||
typedef __clock_t __attribute__ ((__aligned__ (4))) __sigchld_clock_t;
|
||||
# undef __SI_ALIGNMENT
|
||||
# define __SI_ALIGNMENT __attribute__ ((__aligned__ (8)))
|
||||
# undef __SI_CLOCK_T
|
||||
# define __SI_CLOCK_T __sigchld_clock_t
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user