Deadlock Affecting kernel-64k-debug-modules-extra package, versions <0:5.14.0-503.11.1.el9_5


Severity

Recommended
0.0
medium
0
10

Based on Red Hat Enterprise Linux security rating.

Threat Intelligence

EPSS
0.04% (12th 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 IDSNYK-RHEL9-KERNEL64KDEBUGMODULESEXTRA-6424083
  • published14 Mar 2024
  • disclosed29 Feb 2024

Introduced: 29 Feb 2024

CVE-2023-52498  (opens in a new tab)
CWE-833  (opens in a new tab)

How to fix?

Upgrade RHEL:9 kernel-64k-debug-modules-extra to version 0:5.14.0-503.11.1.el9_5 or higher.
This issue was patched in RHSA-2024:9315.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-64k-debug-modules-extra package and not the kernel-64k-debug-modules-extra package as distributed by RHEL. See How to fix? for RHEL:9 relevant fixed versions and status.

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

PM: sleep: Fix possible deadlocks in core system-wide PM code

It is reported that in low-memory situations the system-wide resume core code deadlocks, because async_schedule_dev() executes its argument function synchronously if it cannot allocate memory (and not only in that case) and that function attempts to acquire a mutex that is already held. Executing the argument function synchronously from within dpm_async_fn() may also be problematic for ordering reasons (it may cause a consumer device's resume callback to be invoked before a requisite supplier device's one, for example).

Address this by changing the code in question to use async_schedule_dev_nocall() for scheduling the asynchronous execution of device suspend and resume functions and to directly run them synchronously if async_schedule_dev_nocall() returns false.

CVSS Scores

version 3.1