Memory Leak Affecting kernel-preempt-devel package, versions <5.3.18-150200.24.194.1


Severity

Recommended
0.0
low
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.04% (5th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Memory Leak vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-SLES152-KERNELPREEMPTDEVEL-7365174
  • published25 Jun 2024
  • disclosed24 Jun 2024

Introduced: 24 Jun 2024

CVE-2021-47416  (opens in a new tab)
CWE-401  (opens in a new tab)

How to fix?

Upgrade SLES:15.2 kernel-preempt-devel to version 5.3.18-150200.24.194.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-preempt-devel package and not the kernel-preempt-devel package as distributed by SLES. See How to fix? for SLES:15.2 relevant fixed versions and status.

In the Linux kernel, the following vulnerability has been resolved:

phy: mdio: fix memory leak

Syzbot reported memory leak in MDIO bus interface, the problem was in wrong state logic.

MDIOBUS_ALLOCATED indicates 2 states: 1. Bus is only allocated 2. Bus allocated and __mdiobus_register() fails, but device_register() was called

In case of device_register() has been called we should call put_device() to correctly free the memory allocated for this device, but mdiobus_free() calls just kfree(dev) in case of MDIOBUS_ALLOCATED state

To avoid this behaviour we need to set bus->state to MDIOBUS_UNREGISTERED before calling device_register(), because put_device() should be called even in case of device_register() failure.

CVSS Scores

version 3.1