← Back to CVE Explorer

CVE-2026-72138

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: xen/gntdev: fix error handling in ioctl When gntdev_ioctl_map_grant_ref() fails to copy the operation result back to userspace after successfully adding the mapping to the list, the error path returns -EFAULT without releasing the reference acquired by gntdev_alloc_map(). The mapping remains in priv->maps with a refcount of 1, causing a memory leak and a dangling list entry. Additionally, gntdev_add_map() may modify map->index to avoid overlap with existing mappings. Therefore, the index returned to userspace must be obtained after gntdev_add_map() completes. Fix this by holding the mutex across gntdev_add_map(), retrieving the correct index, and copy_to_user(). If copy_to_user() fails, remove the mapping from the list and release the reference while still holding the lock. Fix these issues by properly handling all error cases.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-08-15 06:21:31.337000
Last modified
2026-11-06 17:19:37.850000
View original CVE JSON
{
  "id": "CVE-2026-72138",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-08-15T06:21:31.337",
  "lastModified": "2026-11-06T17:19:37.850",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nxen/gntdev: fix error handling in ioctl\n\nWhen gntdev_ioctl_map_grant_ref() fails to copy the operation result\nback to userspace after successfully adding the mapping to the list,\nthe error path returns -EFAULT without releasing the reference\nacquired by gntdev_alloc_map(). The mapping remains in priv->maps\nwith a refcount of 1, causing a memory leak and a dangling list\nentry.\n\nAdditionally, gntdev_add_map() may modify map->index to avoid overlap\nwith existing mappings. Therefore, the index returned to userspace\nmust be obtained after gntdev_add_map() completes.\n\nFix this by holding the mutex across gntdev_add_map(), retrieving\nthe correct index, and copy_to_user(). If copy_to_user() fails,\nremove the mapping from the list and release the reference while\nstill holding the lock.\n\n\nFix these issues by properly handling all error cases."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/xen/gntdev.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "52dc40ef0cfee6ae89b7524967e73f0ba37906d7",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "1dd9cb98fe228e017fff9efb33862ff38c741b65",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "6df926130aee6cab9b5d2e5b7862e49ccac348dc",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "311011f8cc206c5af2877b03e3f627ee1b8fe024",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "18a693733f7ad004e1ab0466693121ca70cd95dd",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "16d3ccdabb8dee9be2cdcd6d3f9a125572ec0454",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "6883269a323609f68f6faa903f8f8ff3d191cec8",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "68b025c813c2eb41ff25628e3d4952d5185eb1a4",
              "lessThan": "45ca1afe2fd14c04e37227e79d3f8455831d8408",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/xen/gntdev.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "2.6.39",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "2.6.39",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.261",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.212",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.178",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.145",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.97",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.40",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.1.5",
              "lessThanOrEqual": "7.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-11-06T16:51:54.267529Z",
          "id": "CVE-2026-72138",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/16d3ccdabb8dee9be2cdcd6d3f9a125572ec0454",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/18a693733f7ad004e1ab0466693121ca70cd95dd",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/1dd9cb98fe228e017fff9efb33862ff38c741b65",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/311011f8cc206c5af2877b03e3f627ee1b8fe024",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/45ca1afe2fd14c04e37227e79d3f8455831d8408",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/52dc40ef0cfee6ae89b7524967e73f0ba37906d7",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/6883269a323609f68f6faa903f8f8ff3d191cec8",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/6df926130aee6cab9b5d2e5b7862e49ccac348dc",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}