This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Use common bits/sem.h for more architectures

On 08/10/2018 16:45, Joseph Myers wrote:
> sysdeps/unix/sysv/linux/bits/sem.h has padding after time fields in
> struct semid_ds unconditionally, and thus is only suitable for 32-bit
> architectures (no 64-bit configurations use this file);
> sysdeps/unix/sysv/linux/generic/bits/sem.h is substantively the same,
> except that the padding is conditioned on __WORDSIZE == 32, and so it
> can be used for 64-bit architectures as well.
> This patch adds the conditionals to
> sysdeps/unix/sysv/linux/bits/sem.h.  The linux/generic/ version is
> then no longer needed and so is removed, as are the alpha, ia64 and
> s390 versions which are also no longer needed.  The other
> architecture-specific versions have different padding or types and so
> are still needed after this change.
> This is essentially the same change for bits/sem.h as the bits/msq.h
> patch <>
> (pending review; there is no dependency on that patch).  However, the
> details of the padding variations for the architectures that aren't
> changed are not all the same between msqid_ds and semid_ds.
> Tested with
> 2018-10-08  Joseph Myers  <>
> 	* sysdeps/unix/sysv/linux/bits/sem.h: Include <bits/wordsize.h>.
> 	(struct semid_ds): Condition padding after time fields on
> 	[__WORDSIZE == 32].
> 	* sysdeps/unix/sysv/linux/alpha/bits/sem.h: Remove file.
> 	* sysdeps/unix/sysv/linux/generic/bits/sem.h: Likewise.
> 	* sysdeps/unix/sysv/linux/ia64/bits/sem.h: Likewise.
> 	* sysdeps/unix/sysv/linux/s390/bits/sem.h: Likewise.

LGTM, thanks.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]