PatchSiren

PatchSiren cyber security CVE debrief

CVE-2026-45880 Linux CVE debrief

A resource leak vulnerability in the Linux kernel's PCI Peer-to-Peer DMA (P2PDMA) subsystem can cause system hangs during PCI device removal. When vm_insert_page() fails in p2pmem_alloc_mmap(), the per-CPU reference count for the page map (pgmap) is not decremented, leading to memunmap_pages() hanging indefinitely when the PCI device is later removed. The vulnerability stems from a missing percpu_ref_put() call in the error handling path. This affects kernel versions that include the P2PDMA functionality. The fix adds the missing reference count decrement to properly release resources on mapping failure.

Vendor
Linux
Product
Unknown
CVSS
MEDIUM 5.5
CISA KEV
Not listed in stored evidence
Original CVE published
2026-05-27
Original CVE updated
2026-06-25
Advisory published
2026-05-27
Advisory updated
2026-06-25

Who should care

Linux system administrators managing servers with PCI P2PDMA-capable devices; kernel maintainers; organizations running workloads that utilize peer-to-peer DMA between PCI devices

Technical summary

The vulnerability exists in drivers/pci/p2pdma.c in the p2pmem_alloc_mmap() function. After successfully allocating memory from the gen_pool via gen_pool_alloc_owner(), a per-CPU reference is acquired via percpu_ref_get(). If the subsequent vm_insert_page() call fails to map the page into user space, the error handling path returns without calling percpu_ref_put() to release the reference. This leaves the pgmap reference count elevated. When the PCI device is later removed, memunmap_pages() waits indefinitely for the reference count to reach zero, causing a hang. The fix adds the missing percpu_ref_put() call in the error path before returning.

Defensive priority

medium

Recommended defensive actions

  • Apply kernel updates containing the referenced stable commits when available from your Linux distribution
  • Monitor NVD for CVSS scoring once analysis is complete
  • Review systems utilizing PCI P2PDMA functionality for stability issues during device hotplug operations
  • Consider proactive patching for systems with high-availability requirements for PCI device management

Evidence notes

Vulnerability description confirms missing percpu_ref_put() in error path when vm_insert_page() fails. Kernel commit references indicate fixes applied to stable branches. No CVSS score assigned yet by NVD (status: Awaiting Analysis).

Sources and references

Verified primary and authoritative sources

  • CVE-2026-45880 CVE Program record

    Publisher, destination, and source semantics verified

    URL: https://www.cve.org/CVERecord?id=CVE-2026-45880

    CVE Program - Official CVE Program record with source-provided CVE metadata.

  • CVE-2026-45880 NVD vulnerability detail

    Publisher, destination, and source semantics verified

    URL: https://nvd.nist.gov/vuln/detail/CVE-2026-45880

    NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.

Supplemental references

  • Source reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/51b7181cfbedf289ce794b6d97a1c596c309ec38

    416baaa9-dc9f-4396-8d5f-8c081fb06d67

  • Source reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/6220694c52a5a04102b48109e4f24e958b559bd3

    416baaa9-dc9f-4396-8d5f-8c081fb06d67

  • Source reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/a1f4dc72efc3204db95d052058d785cad7ce755f

    416baaa9-dc9f-4396-8d5f-8c081fb06d67

  • Source reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/baa42b756d183a59572f3890981a3d32b8d05d40

    416baaa9-dc9f-4396-8d5f-8c081fb06d67

  • Source reference

    Unverified legacy reference

    URL: https://git.kernel.org/stable/c/e19cce88ec4c4877f4ff2469099b9cf23cc3e93e

    416baaa9-dc9f-4396-8d5f-8c081fb06d67

Methodology and review provenance

AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.