CVE-2024-56760

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
06/01/2025
Last modified:
01/10/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> PCI/MSI: Handle lack of irqdomain gracefully<br /> <br /> Alexandre observed a warning emitted from pci_msi_setup_msi_irqs() on a<br /> RISCV platform which does not provide PCI/MSI support:<br /> <br /> WARNING: CPU: 1 PID: 1 at drivers/pci/msi/msi.h:121 pci_msi_setup_msi_irqs+0x2c/0x32<br /> __pci_enable_msix_range+0x30c/0x596<br /> pci_msi_setup_msi_irqs+0x2c/0x32<br /> pci_alloc_irq_vectors_affinity+0xb8/0xe2<br /> <br /> RISCV uses hierarchical interrupt domains and correctly does not implement<br /> the legacy fallback. The warning triggers from the legacy fallback stub.<br /> <br /> That warning is bogus as the PCI/MSI layer knows whether a PCI/MSI parent<br /> domain is associated with the device or not. There is a check for MSI-X,<br /> which has a legacy assumption. But that legacy fallback assumption is only<br /> valid when legacy support is enabled, but otherwise the check should simply<br /> return -ENOTSUPP.<br /> <br /> Loongarch tripped over the same problem and blindly enabled legacy support<br /> without implementing the legacy fallbacks. There are weak implementations<br /> which return an error, so the problem was papered over.<br /> <br /> Correct pci_msi_domain_supports() to evaluate the legacy mode and add<br /> the missing supported check into the MSI enable path to complete it.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.69 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.12.8 (excluding)
cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.13:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.13:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.13:rc4:*:*:*:*:*:*