vfio/pci: Fix double free in dma-buf feature
In the Linux kernel, the following vulnerability has been resolved: vfio/pci: Fix double free in dma-buf feature The error path through vfio_pci_core_feature_dma_buf() ignores its own advice to only use dma_buf_put() after dma_buf_export(), instead falling through the entire unwind chain. In the unlikely event that we encounter file descriptor exhaustion, this can result in an unbalanced refcount on the vfio device and double free of allocated objects. Avoid this by moving the "put" directly into the error path and return the errno rather than entering the unwind chain.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 6.19.11
- CVEs
- CVE-2026-31468
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 23:01 UTC · Revision 1
Source evidence
vfio/pci: Fix double free in dma-buf feature
core-osv · Original sourcePublished 22 Apr 2026, 13:53 UTC
In the Linux kernel, the following vulnerability has been resolved: vfio/pci: Fix double free in dma-buf feature The error path through vfio_pci_core_feature_dma_buf() ignores its own advice to only use dma_buf_put() after dma_buf_export(), instead falling through the entire unwind chain. In the unlikely event that we encounter file descriptor exhaustion, this can result in an unbalanced refcount on the vfio device and double free of allocated objects. Avoid this by moving the "put" directly into the error path and return the errno rather than entering the unwind chain.
osv:CVE-2026-31468
Kernel
Fixed versions: 6.19.11
Complete source record
{
"id": "dc41d1b7555eab70f08290c4479b2f85d1c32c717c4e377f335d70cffa3c55f4",
"url": "https://osv.dev/vulnerability/CVE-2026-31468",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "vfio/pci: Fix double free in dma-buf feature",
"summary": "In the Linux kernel, the following vulnerability has been resolved: vfio/pci: Fix double free in dma-buf feature The error path through vfio_pci_core_feature_dma_buf() ignores its own advice to only use dma_buf_put() after dma_buf_export(), instead falling through the entire unwind chain. In the unlikely event that we encounter file descriptor exhaustion, this can result in an unbalanced refcount on the vfio device and double free of allocated objects. Avoid this by moving the \"put\" directly into the error path and return the errno rather than entering the unwind chain.",
"evidence": "osv:CVE-2026-31468",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "6.19.11",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "high",
"structured": {
"id": "CVE-2026-31468",
"aliases": [
"CVE-2026-31468"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5d74781ebc86c5fa9e9d6934024c505412de9b52"
},
{
"fixed": "83ad334afc9a645cef1062f5346526b1e36d6516"
},
{
"fixed": "e98137f0a874ab36d0946de4707aa48cb7137d1c"
}
]
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-31468.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.19.0"
},
{
"fixed": "6.19.11"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-31468.json"
}
}
],
"modified": "2026-10-28T02:30:32.077177404Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/83ad334afc9a645cef1062f5346526b1e36d6516",
"https://git.kernel.org/stable/c/e98137f0a874ab36d0946de4707aa48cb7137d1c",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/31xxx/CVE-2026-31468.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-31468",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/31xxx/CVE-2026-31468.json"
}
},
"related_cves": [
{
"value": "CVE-2026-31468",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 499211,
"published_at": "2026-04-22T13:53:57.583+00:00"
}