Race Condition Affecting kernel-livepatch-5_14_21-150500_55_88-default package, versions <1-150500.11.5.1


Severity

Recommended
0.0
medium
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.04% (6th 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 Race Condition vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-SLES155-KERNELLIVEPATCH514211505005588DEFAULT-8526597
  • published18 Dec 2024
  • disclosed17 Dec 2024

Introduced: 17 Dec 2024

NewCVE-2024-50135  (opens in a new tab)
CWE-362  (opens in a new tab)

How to fix?

Upgrade SLES:15.5 kernel-livepatch-5_14_21-150500_55_88-default to version 1-150500.11.5.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-livepatch-5_14_21-150500_55_88-default package and not the kernel-livepatch-5_14_21-150500_55_88-default package as distributed by SLES. See How to fix? for SLES:15.5 relevant fixed versions and status.

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

nvme-pci: fix race condition between reset and nvme_dev_disable()

nvme_dev_disable() modifies the dev->online_queues field, therefore nvme_pci_update_nr_queues() should avoid racing against it, otherwise we could end up passing invalid values to blk_mq_update_nr_hw_queues().

WARNING: CPU: 39 PID: 61303 at drivers/pci/msi/api.c:347 pci_irq_get_affinity+0x187/0x210 Workqueue: nvme-reset-wq nvme_reset_work [nvme] RIP: 0010:pci_irq_get_affinity+0x187/0x210 Call Trace: <TASK> ? blk_mq_pci_map_queues+0x87/0x3c0 ? pci_irq_get_affinity+0x187/0x210 blk_mq_pci_map_queues+0x87/0x3c0 nvme_pci_map_queues+0x189/0x460 [nvme] blk_mq_update_nr_hw_queues+0x2a/0x40 nvme_reset_work+0x1be/0x2a0 [nvme]

Fix the bug by locking the shutdown_lock mutex before using dev->online_queues. Give up if nvme_dev_disable() is running or if it has been executed already.

CVSS Scores

version 3.1