CVE-2025-40134

Source
https://nvd.nist.gov/vuln/detail/CVE-2025-40134
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-40134.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2025-40134
Downstream
Published
2025-11-12T10:23:22.771Z
Modified
2025-11-28T02:34:21.213792Z
Summary
dm: fix NULL pointer dereference in __dm_suspend()
Details

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

dm: fix NULL pointer dereference in _dmsuspend()

There is a race condition between dm device suspend and table load that can lead to null pointer dereference. The issue occurs when suspend is invoked before table load completes:

BUG: kernel NULL pointer dereference, address: 0000000000000054 Oops: 0000 [#1] PREEMPT SMP PTI CPU: 6 PID: 6798 Comm: dmsetup Not tainted 6.6.0-g7e52f5f0ca9b #62 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.1-2.fc37 04/01/2014 RIP: 0010:blkmqwaitquiescedone+0x0/0x50 Call Trace: <TASK> blkmqquiescequeue+0x2c/0x50 dmstopqueue+0xd/0x20 _dmsuspend+0x130/0x330 dmsuspend+0x11a/0x180 devsuspend+0x27e/0x560 ctlioctl+0x4cf/0x850 dmctlioctl+0xd/0x20 vfsioctl+0x1d/0x50 _sesysioctl+0x9b/0xc0 _x64sysioctl+0x19/0x30 x64syscall+0x2c4a/0x4620 dosyscall_64+0x9e/0x1b0

The issue can be triggered as below:

T1 T2 dmsuspend tableload _dmsuspend dmsetupmdqueue dmmqinitrequestqueue blkmqinitallocatedqueue => q->mqops = set->ops; (1) dmstopqueue / dmwaitforcompletion => q->tagset NULL pointer! (2) => q->tag_set = set; (3)

Fix this by checking if a valid table (map) exists before performing request-based suspend and waiting for target I/O. When map is NULL, skip these table-dependent suspend steps.

Even when map is NULL, no I/O can reach any target because there is no table loaded; I/O submitted in this state will fail early in the DM layer. Skipping the table-dependent suspend logic in this case is safe and avoids NULL pointer dereferences.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/40xxx/CVE-2025-40134.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
c4576aed8d85d808cd6443bda58393d525207d01
Fixed
9dc43ea6a20ff83fe9a5fe4be47ae0fbf2409b98
Fixed
30f95b7eda5966b81cb221bd569c0f095a068cf6
Fixed
a0e54bd8d7ea79127fe9920df3ae36f85e79ac7c
Fixed
a802901b75e13cc306f1b7ab0f062135c8034e9e
Fixed
846cafc4725ca727d94f9c4b5f789c1a7c8fb6fe
Fixed
19ca4528666990be376ac3eb6fe667b03db5324d
Fixed
331c2dd8ca8bad1a3ac10cce847ffb76158eece4
Fixed
8d33a030c566e1f105cd5bf27f37940b6367f3be

Database specific

source

"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-40134.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.0.0
Fixed
5.4.301
Type
ECOSYSTEM
Events
Introduced
5.5.0
Fixed
5.10.246
Type
ECOSYSTEM
Events
Introduced
5.11.0
Fixed
5.15.195
Type
ECOSYSTEM
Events
Introduced
5.16.0
Fixed
6.1.156
Type
ECOSYSTEM
Events
Introduced
6.2.0
Fixed
6.6.112
Type
ECOSYSTEM
Events
Introduced
6.7.0
Fixed
6.12.53
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.17.3

Database specific

source

"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-40134.json"