CVE-2025-21874

Summary

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

dm-integrity: Avoid divide by zero in table status in Inline mode

In Inline mode, the journal is unused, and journal_sectors is zero.

Calculating the journal watermark requires dividing by journal_sectors, which should be done only if the journal is configured.

Otherwise, a simple table query (dmsetup table) can cause OOPS.

This bug did not show on some systems, perhaps only due to compiler optimization.

On my 32-bit testing machine, this reliably crashes with the following:

: Oops: divide error: 0000 [#1] PREEMPT SMP : CPU: 0 UID: 0 PID: 2450 Comm: dmsetup Not tainted 6.14.0-rc2+ #959 : EIP: dm_integrity_status+0x2f8/0xab0 [dm_integrity] …

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxfb0987682c629c1d2c476f35f6fde405a5e304a4 < 22c6f577b3cb184857b440ae5e5916f6c9e7021daffected
LinuxLinuxfb0987682c629c1d2c476f35f6fde405a5e304a4 < 06d9895f265282e939a8933bb18de82eba2b4ddaaffected
LinuxLinuxfb0987682c629c1d2c476f35f6fde405a5e304a4 < 7fb39882b20c98a9a393c244c86b56ef6933cff8affected
LinuxLinux6.11affected
LinuxLinux0 < 6.11unaffected
LinuxLinux6.12.18 <= 6.12.*unaffected
LinuxLinux6.13.6 <= 6.13.*unaffected
LinuxLinux6.14 <= *unaffected

Weaknesses

References