The kernel packages contain the Linux kernel, the core of any Linux operating system.
It was found that the Linux kernel's implementation of vectored pipe read and write functionality did not take into account the I/O vectors that were already processed when retrying after a failed atomic access operation, potentially resulting in memory corruption due to an I/O vector array overrun. A local, unprivileged user could use this flaw to crash the system or, potentially, escalate their privileges on the system. (CVE-2015-1805, Important)
A buffer overflow flaw was found in the way the Linux kernel's Intel AES-NI instructions optimized version of the RFC4106 GCM mode decryption functionality handled fragmented packets. A remote attacker could use this flaw to crash, or potentially escalate their privileges on, a system over a connection with an active AES-GCM mode IPSec security association. (CVE-2015-3331, Important)
The security impact of the CVE-2015-1805 issue was discovered by Red Hat.
This update also fixes the following bugs:
Parallel extending direct I/O writes to a file could previously race to update the size of the file. If executed in an incorrect order, the file size could move backwards and push a previously completed write beyond the end of the file, which resulted in losing the write. With this update, file size updates always execute in appropriate order, thus fixing this bug. (BZ#1218498)
When the load rose and run queues were busy due to the effects of the enqueue_entity() function, tasks with large sched_entity.vruntime values could previously be prevented from using the CPU time. A patch eliminating the entity_key() function in the sched_fair.c latency value has been backported from upstream, and all tasks are now provided with fair CPU runtime. (BZ#1219121)
Previously, running the clock_gettime() function quickly in a loop could result in a jump back in time. Consequently, programs could behave unexpectedly when they assumed that clock_getime() returned an equal or greater time in subsequent calls. With this update, if the time delta between calls is negative, the clock is no longer updated. As a result, a subsequent call to clock_gettime() is guaranteed to return a time greater than or equal to a previous call. (BZ#1219500)
All kernel users are advised to upgrade to these updated packages, which contain backported patches to correct these issues. The system must be rebooted for this update to take effect.