Show Table of Contents
Executable files created using the
Thread cancellation support for APIs depending on
The
Chapter 3. Compiler and Tools
C exception handling no longer causes unexpected terminations
Previously, an incorrect unwind routine was called on the 32-bit Intel architecture because of an erroneous check in the code handling C exceptions. As a consequence, the
pthread_cond_wait() function from the glibc library could write data out of bounds and applications written in the C programming language using glibc sometimes terminated unexpectedly. The erroneous check has been fixed and the unexpected termination no longer occurs. (BZ#1104812)
Executable files created using the -pie option now start correctly
Previously, the linker included in the
binutils package produced incorrect dynamic relocations for position-independent binaries for the 32-bit Intel architecture. As a consequence, building code with the -pie compiler option produced binary files that failed to start. The linker has been fixed and now generates position-independent executable files that run correctly. (BZ#1427285)
Thread cancellation support for APIs depending on /etc/hosts.conf
A defect in thread-cancellation support for the
setmntent() function could cause the function to fail and return an error where it was expected to succeed. Consequently, programs that rely on setmntent() could fail to start. The setmntent() function has been fixed, and now works as expected.
In addition, the
setttyent() and setnetgrent() functions, and all APIs that rely on the /etc/hosts.conf file, have been enhanced to provide improved support for thread cancellation. (BZ#1437147)
ld no longer produces invalid executable files with code after initialized data
Previously, the binutils
ld linker placed code at an incorrect location in memory when the code followed after data initialized to zero values. As a consequence, programs in the linked executable files terminated unexpectedly with a segmentation fault. The linker has been fixed to properly allocate space for the data and position the executable code at the correct starting address. As a result, the linked executable files now run correctly. (BZ#1476412)
The ss program no longer stops when providing a long list of filters
Previously, providing a long list of filters to the
ss command caused an integer value overflow. As a consequence, the 'ss' tool could stop the program execution. With this update, faulty bits in the source code are corrected, and the described problem no longer occurs. (BZ#1476664)
SystemTap no longer causes kernel panic on systems under heavy load
Previously, when probes of the
SystemTap tool were added and removed at the same time by multiple processes, a kernel panic occurred. As a consequence, unloading SystemTap modules on systems under heavy load in some cases caused kernel panics. The procedure for removing probes has now been fixed and SystemTap no longer causes a kernel panic in the described situation. (BZ#1525651)

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.