CVE-2024-45013

nvme: move stopping keep-alive into nvme_uninit_ctrl()

State
Published
Severity
9.8 Critical
Published
Sep 11, 2024
Updated
Aug 5, 2026
Reserved
Aug 21, 2024

Read the record on cve.org

Description

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

nvme: move stopping keep-alive into nvme_uninit_ctrl()

Commit 4733b65d82bd ("nvme: start keep-alive after admin queue setup") moves starting keep-alive from nvme_start_ctrl() into nvme_init_ctrl_finish(), but don't move stopping keep-alive into nvme_uninit_ctrl(), so keep-alive work can be started and keep pending after failing to start controller, finally use-after-free is triggered if nvme host driver is unloaded.

This patch fixes kernel panic when running nvme/004 in case that connection failure is triggered, by moving stopping keep-alive into nvme_uninit_ctrl().

This way is reasonable because keep-alive is now started in nvme_init_ctrl_finish().

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 3af755a46881c32fecaecfdeaf3a8f0a869deca5 to before 4101af98ab573554c4225e328d506fec2a74bc54Affected
  • 3af755a46881c32fecaecfdeaf3a8f0a869deca5 to before a54a93d0e3599b05856971734e15418ac551a14cAffected
LinuxLinux
  • 6.7Affected
  • before 6.7Not affected
  • 6.10.7 through 6.10.*Not affected
  • 6.11 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.