{"api_version":"1","generated_at":"2026-04-23T11:34:17+00:00","cve":"CVE-2026-31468","urls":{"html":"https://cve.report/CVE-2026-31468","api":"https://cve.report/api/cve/CVE-2026-31468.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-31468","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-31468"},"summary":{"title":"vfio/pci: Fix double free in dma-buf feature","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nvfio/pci: Fix double free in dma-buf feature\n\nThe error path through vfio_pci_core_feature_dma_buf() ignores its\nown advice to only use dma_buf_put() after dma_buf_export(), instead\nfalling through the entire unwind chain.  In the unlikely event that\nwe encounter file descriptor exhaustion, this can result in an\nunbalanced refcount on the vfio device and double free of allocated\nobjects.\n\nAvoid this by moving the \"put\" directly into the error path and return\nthe errno rather than entering the unwind chain.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-04-22 14:16:43","updated_at":"2026-04-22 14:16:43"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/e98137f0a874ab36d0946de4707aa48cb7137d1c","name":"https://git.kernel.org/stable/c/e98137f0a874ab36d0946de4707aa48cb7137d1c","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/83ad334afc9a645cef1062f5346526b1e36d6516","name":"https://git.kernel.org/stable/c/83ad334afc9a645cef1062f5346526b1e36d6516","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-31468","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-31468","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5d74781ebc86c5fa9e9d6934024c505412de9b52 83ad334afc9a645cef1062f5346526b1e36d6516 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5d74781ebc86c5fa9e9d6934024c505412de9b52 e98137f0a874ab36d0946de4707aa48cb7137d1c git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6.19","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19.11 6.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/vfio/pci/vfio_pci_dmabuf.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"83ad334afc9a645cef1062f5346526b1e36d6516","status":"affected","version":"5d74781ebc86c5fa9e9d6934024c505412de9b52","versionType":"git"},{"lessThan":"e98137f0a874ab36d0946de4707aa48cb7137d1c","status":"affected","version":"5d74781ebc86c5fa9e9d6934024c505412de9b52","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/vfio/pci/vfio_pci_dmabuf.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"6.19"},{"lessThan":"6.19","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.19.*","status":"unaffected","version":"6.19.11","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.0","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.19.11","versionStartIncluding":"6.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0","versionStartIncluding":"6.19","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nvfio/pci: Fix double free in dma-buf feature\n\nThe error path through vfio_pci_core_feature_dma_buf() ignores its\nown advice to only use dma_buf_put() after dma_buf_export(), instead\nfalling through the entire unwind chain.  In the unlikely event that\nwe encounter file descriptor exhaustion, this can result in an\nunbalanced refcount on the vfio device and double free of allocated\nobjects.\n\nAvoid this by moving the \"put\" directly into the error path and return\nthe errno rather than entering the unwind chain."}],"providerMetadata":{"dateUpdated":"2026-04-22T13:53:57.583Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/83ad334afc9a645cef1062f5346526b1e36d6516"},{"url":"https://git.kernel.org/stable/c/e98137f0a874ab36d0946de4707aa48cb7137d1c"}],"title":"vfio/pci: Fix double free in dma-buf feature","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-31468","datePublished":"2026-04-22T13:53:57.583Z","dateReserved":"2026-03-09T15:48:24.097Z","dateUpdated":"2026-04-22T13:53:57.583Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-04-22 14:16:43","lastModifiedDate":"2026-04-22 14:16:43","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"31468","Ordinal":"1","Title":"vfio/pci: Fix double free in dma-buf feature","CVE":"CVE-2026-31468","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"31468","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nvfio/pci: Fix double free in dma-buf feature\n\nThe error path through vfio_pci_core_feature_dma_buf() ignores its\nown advice to only use dma_buf_put() after dma_buf_export(), instead\nfalling through the entire unwind chain.  In the unlikely event that\nwe encounter file descriptor exhaustion, this can result in an\nunbalanced refcount on the vfio device and double free of allocated\nobjects.\n\nAvoid this by moving the \"put\" directly into the error path and return\nthe errno rather than entering the unwind chain.","Type":"Description","Title":"vfio/pci: Fix double free in dma-buf feature"}]}}}