Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Chapter 56. Compiler and Tools

Memory consumption of applications using libcurl grows with each TLS connection

The Network Security Services (NSS) PK11_DestroyGenericObject() function does not release resources allocated by PK11_CreateGenericObject() early enough. Consequently, the memory allocated by applications using the libcurl package can grow with each TLS connection.
To work around this problem:
  • Re-use existing TLS connections where possible or
  • Use certificates and keys from the NSS database instead of loading them from files directly using libcurl (BZ#1510247)

OProfile and perf can not sample events on 2nd generation Intel Xeon Phi processors when NMI watchdog is disabled

Due to a performance counter hardware error, sampling performance events with the default hardware event CPU_CLK_UNHALTED may fail on 2nd generation Intel Xeon Phi processors. As a consequence, the OProfile and perf tools fail to receive any samples when the NMI watchdog is disabled. To work around this problem, enable NMI watchdog before running the perf or operf command:
echo 1 > /proc/sys/kernel/nmi_watchdog
...
operf some_examined_program
opreport
...
Note that this workaround allows only the selected tool to work correctly, but not the NMI watchdog, because it is based on the NMI watchdog using the erroneous counter. (BZ#1536004)

ksh with the KEYBD trap mishandles multibyte characters

The Korn Shell (KSH) is unable to correctly handle multibyte characters when the KEYBD trap is enabled. Consequently, when the user enters, for example, Japanese characters, ksh displays an incorrect string. To work around this problem, disable the KEYBD trap in the /etc/kshrc file by commenting out the following line:
trap keybd_trap KEYBD
For more details, see a related Knowledgebase solution. (BZ#1503922)