kernel (SL7)

Synopsis: Important: kernel security, bug fix, and enhancement update
Advisory ID: SLSA-2017:0086-1
Issue Date: 2017-01-17
CVE Numbers: CVE-2016-7117

To see the complete list of bug fixes, users are directed to the related
Knowledge Article:

Security Fix(es):

* A use-after-free vulnerability was found in the kernel’s socket recvmmsg
subsystem. This may allow remote attackers to corrupt memory and may allow
execution of arbitrary code. This corruption takes place during the error
handling routines within __sys_recvmmsg() function. (CVE-2016-7117,

* A use-after-free vulnerability was found in tcp_xmit_retransmit_queue
and other tcp_* functions. This condition could allow an attacker to send
an incorrect selective acknowledgment to existing connections, possibly
resetting a connection. (CVE-2016-6828, Moderate)

* A flaw was found in the Linux kernel’s implementation of the SCTP
protocol. A remote attacker could trigger an out-of-bounds read with an
offset of up to 64kB potentially causing the system to crash.
(CVE-2016-9555, Moderate)

Bug Fix(es):

* Previously, the performance of Internet Protocol over InfiniBand (IPoIB)
was suboptimal due to a conflict of IPoIB with the Generic Receive Offload
(GRO) infrastructure. With this update, the data cached by the IPoIB
driver has been moved from a control block into the IPoIB hard header,
thus avoiding the GRO problem and the corruption of IPoIB address
information. As a result, the performance of IPoIB has been improved.

* Previously, when a virtual machine (VM) with PCI-Passthrough interfaces
was recreated, a race condition between the eventfd daemon and the virqfd
daemon occurred. Consequently, the operating system rebooted. This update
fixes the race condition. As a result, the operating system no longer
reboots in the described situation.

* Previously, a packet loss occurred when the team driver in round-robin
mode was sending a large number of packets. This update fixes counting of
the packets in the round-robin runner of the team driver, and the packet
loss no longer occurs in the described situation.

* Previously, the virtual network devices contained in the deleted
namespace could be deleted in any order. If the loopback device was not
deleted as the last item, other netns devices, such as vxlan devices,
could end up with dangling references to the loopback device.
Consequently, deleting a network namespace (netns) occasionally ended by a
kernel oops. With this update, the underlying source code has been fixed
to ensure the correct order when deleting the virtual network devices on
netns deletion. As a result, the kernel oops no longer occurs under the
described circumstances.

* Previously, a Kabylake system with a Sunrise Point Platform Controller
Hub (PCH) with a PCI device ID of 0xA149 showed the following warning
messages during the boot:

“Unknown Intel PCH (0xa149) detected.” “Warning: Intel Kabylake
processor with unknown PCH – this hardware has not undergone testing …”

The messages were shown because this PCH was not properly recognized. With
this update, the problem has been fixed, and the operating system now
boots without displaying the warning messages.

* Previously, the operating system occasionally became unresponsive after
a long run. This was caused by a race condition between the
try_to_wake_up() function and a woken up task in the core scheduler. With
this update, the race condition has been fixed, and the operating system
no longer locks up in the described scenario.


– Scientific Linux Development Team