-
Language:
English
-
Language:
English
Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
5. Kernel-Related Updates
5.1. All Architectures
- Executing binaries with more than 2GB of debug information no longer fails.
- When shutting down a database, all allocated hugepages are now released upon shutdown.
invalidate_mapping_pages()
calls no longer cause soft lockups.- A bug that delayed
oomkill
from launching in a timely fashion (on systems with large memory) is now fixed. - A bug that caused soft lockup warnings when allocating memory on a system with large memory is now fixed.
- 32-bit NFS clients can now correctly process 64-bit inode numbers.
- The kernel now asserts Data Terminal Ready (DTR) signals before printing to serial ports during boot time. DTR assertion is required by some devices. Kernel boot messages are now printed to serial consoles on such devices.
- The kernel parameter
ide0=noprobe
no longer causes a kernel panic. - Added a new kernel parameter:
/proc/sys/vm/flush_mmap_pages
. This parameter specifies whether or not memory-mapped file pages should be flushed to disk bykupdate
while the memory map is active. Valid values for this parameter are1
(enable memory mapping bykupdate
) and0
(disable memory mapping bykupdate
). The default value for this parameter is1
.To configure this parameter, useecho [1 or 0] /proc/sys/vm/flush_mmap_pages
. Setting this parameter to0
does the following:kupdate
will not flush dirty memory-mapped file pages as long as the memory map is active.- All dirty file pages will be asynchronously flushed to disk only as soon as the memory map is deactivated.
If you set/proc/sys/vm/flush_mmap_pages
to0
, it is advisable that you use another application to manually sync memory-mapped pages to disk. - Added a new kernel parameter:
/proc/sys/kernel/sched_interactivity
. This parameter allows you to tune the CPU scheduler's interactivity estimator. The interactivity estimator allows interactive processes to acquire more CPU time without causing CPU starvation in other processes.To configure this parameter, useecho [interactivity_level] > /proc/sys/kernel/sched_interactivity
, where[interactivity_level]
can be any of the following:2
— interactivity estimator is fully activated.1
— provides a weaker affinity to interactive processes than2
, but avoids CPU starvation under certain scheduling patterns.0
— any bias or affinity towards interactive processes is disabled.
kprobe
now supportskretprobe_blacklist[]
.- Core dump masking is now supported. This allows a core dump process to skip the shared memory segments of a process when creating a core dump file. This feature also allows you to select whether or not to dump anonymous shared memory for each process.When a process is dumped, all anonymous memory is written to a core file as long as the size of the core file isn't limited. In some cases, you may want to prevent some memory segments (such as huge shared memory) from being dumped. Conversely, you may also want to save file-backed memory segments into a core file, in addition to individual files.For these purposes, you can use
/proc/[pid]/coredump_filter
to specify which memory segments of the[pid]
process is dumped.coredump_filter
is a bitmask of memory types. If a bitmask is set, memory segments of the corresponding memory type are dumped.The following memory types are supported:0x0
— anonymous private memory0x1
— anonymous shared memory0x2
— file-backed private memory0x3
— file-backed shared memory
To set a bitmask for[pid]
, simplyecho
the corresponding bitmask to/proc/[pid]/coredump_filter
. For example, to prevent a dump of all shared memory segments attached to process 1111, use:echo 0x1 > /proc/1111/coredump_filter
The default value ofcoredump_filter
is0x3
, which specifies that all anonymous memory segments are dumped. Also, note that regardless of the bitmask status, MMIO pages (such as frame buffers) are never dumped and vDSO pages are always dumpedWhen a new process is created, the process inherits the bitmask status from its parent. As such, Red Hat recommends that you set upcoredump_filter
before the program runs. To do so,echo
the desired bitmask to/proc/self/coredump_filter
before running the program. audit
can now trace and display per-session user activity.- REV UDF file sizes larger than 1GB are now supported.
- Lock contention tracing and
lockdep
are now supported. These features provide in-depth information about spinlocks held in the kernel, which in turn help developers in driver debugging. - The enumeration order of PCI devices has changed on several platforms to have NICs appear in the order they are labeled on the chassis and how the BIOS numbers them. The affected platforms are as follows:
- Dell PowerEdge R900
- HP ProLiant DL385 G2
- HP ProLiant DL585 G2
- HP Proliant DL580 G5
Note that this change affects new installations only. If you prefer the old enumeration order, use the kernel parameterpci=nobfsort
. - You can now determine the resource limit (
rlimit
) of a process. To do so, runcat /proc/[pid]/limits
. - The maximum soft lockup timeout is now increased from 60 seconds to 300 seconds for systems that have a large number of CPUs. A soft lockup occurs when a CPU reports a memory starvation while it is unable to access a memory node accessed by other CPUs.In this release, you can also adjust the trigger limit for soft lockup warnings. To do so, use the following command (as root):
echo [time] > /proc/sys/kernel/softlockup_thresh
Replace[time]
with the desired number of seconds before a soft lockup warning should be triggered. By default, this value is set to 10 (seconds). show_mem()
output now includes the total number of pagecache pages.- MSI-X is no longer enabled by default. To enable MSI-X, use the kernel module parameter
ql2xenablemsix
.
5.2. PowerPC Architectures
oprofile
now supports the Cell Broadband Engine. Note, however, that fulloprofile
support is available only for the PPU code in this release.For the SPU code, symbol-based profiling is not supported.
5.3. ia64 Architecture
- Added support for Corrected Machine Check Interrupt (CMCI) on hot-added CPUs.