Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2025-38069

PCI: endpoint: pci-epf-test: Fix double free that causes kernel to oops

Description

In the Linux kernel, the following vulnerability has been resolved: PCI: endpoint: pci-epf-test: Fix double free that causes kernel to oops Fix a kernel oops found while testing the stm32_pcie Endpoint driver with handling of PERST# deassertion: During EP initialization, pci_epf_test_alloc_space() allocates all BARs, which are further freed if epc_set_bar() fails (for instance, due to no free inbound window). However, when pci_epc_set_bar() fails, the error path: pci_epc_set_bar() -> pci_epf_free_space() does not clear the previous assignment to epf_test->reg[bar]. Then, if the host reboots, the PERST# deassertion restarts the BAR allocation sequence with the same allocation failure (no free inbound window), creating a double free situation since epf_test->reg[bar] was deallocated and is still non-NULL. Thus, make sure that pci_epf_alloc_space() and pci_epf_free_space() invocations are symmetric, and as such, set epf_test->reg[bar] to NULL when memory is freed. [kwilczynski: commit log]

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 349e7a85b25fa6ee82902d9be2cc5f3bec815120 to < e2e43854ab72a9d4908ac2bf6087f80aa138a8b5affected
  • 349e7a85b25fa6ee82902d9be2cc5f3bec815120 to < 761db4ca3a469f2070757acd4e104dff5125ca99affected
  • 349e7a85b25fa6ee82902d9be2cc5f3bec815120 to < fe2329eff5bee461ebcafadb6ca1df0cbf5945fdaffected
  • 349e7a85b25fa6ee82902d9be2cc5f3bec815120 to < 8b83893d1f6c6061a7d58169ecdf9d5ee9f306eeaffected
  • 349e7a85b25fa6ee82902d9be2cc5f3bec815120 to < 934e9d137d937706004c325fa1474f9e3f1ba10aaffected

Linux Linux

Default version status: affected

  • 4.12affected
  • 0 to < 4.12unaffected
  • 6.1.191 to ≤ 6.1.*unaffected
  • 6.6.160 to ≤ 6.6.*unaffected
  • 6.12.31 to ≤ 6.12.*unaffected
  • 6.14.9 to ≤ 6.14.*unaffected
  • 6.15 to ≤ *unaffected

References