RHSA-2015:1778 Important: kernel security and bug fix update

Updated

The kernel packages contain the Linux kernel, the core of any Linux operating system. The kernel handles the basic functions of the operating system: memory allocation, process allocation, device input and output, etc.

This update fixes the following bugs:

  • On some systems, hotplug events were generated for the device being switched off when ATPX was executed. They caused ACPI hotplug to trigger and attempt to remove the device from the system, which caused it to break down. This update prevents that from happening by setting the no_hotplug flag for the involved Advanced Configuration and Power Interface (ACPI) device objects. (This content is not included.BZ#1207879)

  • Previously, high-endian Message IDs were passed in the header for the SMB2 protocol. As a consequence, mount failures, "Resource temporarily unavailable", occurred when using the "vers=2.0" (or later) option with smb2 mounts on IBM Power Systems and IBM System z. With this update, the Message IDs are converted to their little-endian values before they are sent. As a result, mount is successful in the aforementioned scenario. (This content is not included.BZ#1238693)

  • Prior to this update, when a CPU was idling, a throttled Completely Fair Scheduler (CFS) run queue, for example, from a virtual CPU with a CPU quota less than 100%, sometimes did not wake back up, and hung indefinitely. Now, a CFS bandwidth timer is queued if none is pending when the control group run queue is removed from the CPU run queue. (This content is not included.BZ#1241078)

  • A patch included in Red Hat Enterprise Linux 7.1 introduced a regression by changing the stored return value from a queuecommand() call but failing to take into account that the return value was used again later on. This update fixes the bug by changing the later usage. (This content is not included.BZ#1243412)

  • Several enhancements have been added to the TCP stack, namely:

  • Previously, accessing the CIAA/D register could block access to the PCI configuration space. Consequently, KVM hosts were unable to allocate interrupts to booting guests in certain cases. This update removes the read and write operations to the CIAA/D register and uses standard kernel functions for accessing the PCI configuration space. As a result, the interrupts are now allocated correctly. (This content is not included.BZ#1245597)

  • When a request times out, an Adjunct Processor (AP) queue reset is triggered so as to recover and reinitialize the AP queue. Previously, the reset was executed immediately, regardless of current or pending requests. Due to recent changes to the firmware, however, the reset could be delayed depending on the priority of the pending request. The device driver's waiting time frame was limited, and the driver did not receive the reset response. As a consequence, interrupts were not enabled afterward. With this update, the RAPQ (queue reset) and AQIC (interrupt control) commands are treated fully asynchronously, and the device driver checks the reset and interrupt states periodically. As a result, the device driver can handle the reinitialization properly. (This content is not included.BZ#1248381)

  • Prior to this update, font mappings were set even if the console lacked font mapping support. As a consequence, a null pointer bug was triggered and the boot process occasionally terminated unexpectedly with the following error message:

    Console: switching to colour dummy device 80x25

    Now, font mappings are not set if the console does not support them, which resolves this issue and allows the kernel to boot. (This content is not included.BZ#1248384)

  • A previously added patch introduced sysfs_dirent cache corruption that caused crashes in the Open Firmware (OF) device tree handling code. This update fixes the problem in accordance with the upstream version by decrementing the reference on the duplicate sysfs directory entry and not the parent. (This content is not included.BZ#1249120)

  • A patch in an earlier update caused that the kernel no longer pinned Direct Memory Access (DMA) engines active for the network-receive-offload use case. Consequently, the free_chan_resources() call that occurred after the driver self test no longer had a NET_DMA induced a alloc_chan_resources() call to back it up. A late firing IRQ could lead to the ksoftirqd daemon spinning indefinitely due to the tasklet_disable() performed by free_chan_resources(), which led to unnecessarily high CPU usage. With this update, the IRQ is disabled from triggering the tasklet and re-arming, and inflight interrupts, the timer and inflight tasklets are flushed. As a result, the high CPU usage is prevented. (This content is not included.BZ#1251523)

Users of kernel are advised to upgrade to these updated packages, which fix these bugs. The system must be rebooted for this update to take effect.

Components
Article Type