CVE-2026-97441

ata: ahci: fail probe if BAR too small for claimed ports

State
Published
Severity
Not scored
Published
Sep 24, 2026
Updated
Oct 3, 2026
Reserved
Sep 24, 2026

Read the record on cve.org

Description

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

ata: ahci: fail probe if BAR too small for claimed ports

When an AHCI controller is disabled in BIOS, its HOST_CAP register may contain a bogus value, e.g. 0xFFFFFFFF.

Since CAP.NP (Number of Ports) is a zeroes based 5-bit register field, a value of 0x1f means 32 ports. If CAP.NP claims more ports than can physically fit within the mapped BAR region, accessing port registers beyond the BAR boundary causes a kernel panic.

Add validation in ahci_init_one() to check that the BAR size is sufficient for the number of ports claimed in CAP.NP. The check calculates the required MMIO size as:

required_size = 0x100 (global registers) + max_ports * 0x80

If required_size exceeds the actual BAR size, the probe fails with -ENODEV, preventing the panic and providing a clear error message.

[cassel: commit log]

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 533a08ea11217100cec7a0ed903cb9b9c892d6f1Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before c717b20100ef8cd06b5237af70ea2cb692e058ceAffected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before ff0ab535f8febbd32afa5832f8d2d9b06a8d5060Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before 6d29b91164424256a759ddabc8f2de1ae09bd3f1Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before df262c828b616450eb351349e91c63447551bd01Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before f2e291043c37a896d7f9797e25a356dceb030177Affected
  • 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to before c4086c6e1af757e1ff26fa2d2926b3ec0195de79Affected
LinuxLinux
  • 2.6.12Affected
  • before 2.6.12Not affected
  • 5.10.271 through 5.10.*Not affected
  • 5.15.222 through 5.15.*Not affected
  • 6.1.189 through 6.1.*Not affected
  • 6.6.158 through 6.6.*Not affected
  • 6.12.111 through 6.12.*Not affected
  • 6.18.53 through 6.18.*Not affected
  • 7.2 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.