CVE-2026-90279 PUBLISHED

md/raid5: round bitmap stripes with sector division

Assigner: Linux
Reserved: 11.09.2026 Published: 17.09.2026 Updated: 17.09.2026

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

md/raid5: round bitmap stripes with sector division

raid5_bitmap_sector_map() aligns the array range to full RAID5 stripe widths before converting it to component sectors. That width is chunk_sectors multiplied by the number of data disks, and it is not always a power of two.

Reproduce with a 4-disk RAID5, 1024-sector chunks, and three data disks. The full-stripe width is 3072 sectors. For a one-sector write at array sector 3072, correct rounding gives array range [3072, 6144), which maps to component range [1024, 2048). The old round_down()/round_up() logic instead gives [1024, 4096), which maps to [0, 1024).

Use sector_div() based arithmetic so the rounded range is aligned to the actual RAID5 stripe width.

The deterministic mapper test now reports the fixed component range as [1024, 2048), while the old mask-based range was [0, 1024).

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from b29e6400be51c214a0ad30dce937348b57abe33a to 9d7490007707f90691911385365bd1d691d99225 (excl.)
  • affected from aa8e15d69f5c0044d5bff61844e163aacc4ac172 to cab7d949b18b2f1cd625689dc16c5f81236bac93 (excl.)
  • affected from 9c89f604476cf15c31fbbdb043cff7fbf1dbe0cb to 02c10581866d08822c6348e299881485fc546185 (excl.)
  • affected from 9c89f604476cf15c31fbbdb043cff7fbf1dbe0cb to ccbdc483eb041eef809e9ff223d1ad63518a2c52 (excl.)
  • affected from 9c89f604476cf15c31fbbdb043cff7fbf1dbe0cb to 17ea021ae74987d6064c8195c4922fa025753892 (excl.)
  • Version a41a0df5d7638acf15e723ad985980b4f7ff9383 is affected
  • affected from 6.6.79 to 6.6.157 (excl.)
  • affected from 6.12.13 to 6.12.110 (excl.)
  • affected from 6.13.2 to 6.14 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.14 is affected
  • unaffected from 0 to 6.14 (excl.)
  • unaffected from 6.6.157 to 6.6.* (incl.)
  • unaffected from 6.12.110 to 6.12.* (incl.)
  • unaffected from 6.18.52 to 6.18.* (incl.)
  • unaffected from 7.2.6 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References