]> git.ipfire.org Git - thirdparty/glibc.git/commit
Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/.
authorJoseph Myers <joseph@codesourcery.com>
Wed, 25 Jun 2014 20:29:45 +0000 (20:29 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 25 Jun 2014 20:29:45 +0000 (20:29 +0000)
commit74385da564a92fc441a7d7f3ed7a4295b74bfdbf
treefcde2bbfb578dc472604493f446bcfc9787fab7a
parentc2570a0b35fa8f4568f3897f4f7db8cb5515383f
Remove __ASSUME_O_CLOEXEC / O_CLOEXEC conditionals in sysdeps/unix/sysv/linux/.

This patch removes conditionals on __ASSUME_O_CLOEXEC, and on
O_CLOEXEC being defined, in sysdeps/unix/sysv/linux/, now that
O_CLOEXEC support can be unconditionally assumed.

The patch is conservative in what it changes and further followup
cleanups may be possible.  It may be possible to remove dl-opendir.c,
but the patch does not do so, just removing a redundant undefine and
redefine of __ASSUME_O_CLOEXEC.  Also, __ASSUME_O_CLOEXEC is defined
unconditionally for Hurd as well as Linux.  Thus, if we decide that
O_CLOEXEC support is a required feature of any glibc port, we could
remove __ASSUME_O_CLOEXEC and all conditionals on it throughout glibc,
rather than just cleaning up sysdeps/unix/sysv/linux/.

Tested x86_64 that the disassembly of installed shared libraries is
unchanged by this patch.

* sysdeps/unix/sysv/linux/dl-opendir.c (__ASSUME_O_CLOEXEC): Do
not undefine and redefine.
* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs)
[O_CLOEXEC]: Make code unconditional.
(__get_nprocs) [!O_CLOEXEC]: Remove conditional code.
* sysdeps/unix/sysv/linux/shm_open.c: Do not include
<kernel-features.h>.
[O_CLOEXEC && !__ASSUME_O_CLOEXEC] (have_o_cloexec): Remove
conditional variable definition.
(shm_open) [O_CLOEXEC]: Make code unconditional.
(shm_open) [!O_CLOEXEC || !__ASSUME_O_CLOEXEC]: Remove conditional
code.
ChangeLog
sysdeps/unix/sysv/linux/dl-opendir.c
sysdeps/unix/sysv/linux/getsysstats.c
sysdeps/unix/sysv/linux/shm_open.c