CVE-2026-90409 (GCVE-0-2026-90409)

Vulnerability from cvelistv5 – Published: 2026-09-17 16:09 – Updated: 2026-09-17 16:09
VLAI
Title
drm/panthor: Add vm_bind region with kbo range overlap check
Summary
In the Linux kernel, the following vulnerability has been resolved: drm/panthor: Add vm_bind region with kbo range overlap check When a VM is created, caller has to specify the range of the address space carve-out set aside for mapping kernel BO's. That means vm_bind mappings of UM-exposed BO's should not intersect with that region, but at the moment we're not checking this. At first, I thought of giving these values to drm_gpuvm_init() through its reserve_{offset, range} arguments, but it turns out that is meant for VM address spans that are not managed through the usual drm_gpuvm split/merge circuit, so storing the end of the user VA range at VM creation time and doing a quick check in the vm_bind ioctl path was the simplest workaround. The new check also makes sure vm_bind range doesn't overflow the size of a 64-bit unsigned integer. That was already being done further down the call stack inside drm_gpuvm_sm_map -> drm_gpuvm_range_valid, but it's best to fail early in the driver before GPUVM functions are invoked so that we won't waste time allocating vm_bind context resources.
Severity
No CVSS data available.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 647810ec247641eb5aec8caef818919a4518a0b1 , < 761cf9c63274a5b711c3dc829601723215710d2d (git)
Affected: 647810ec247641eb5aec8caef818919a4518a0b1 , < 985f5e12f3cdf43030e13c2bbd154913133b5c3f (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.10
Unaffected: 0 , < 6.10 (semver)
Unaffected: 7.2.6 , ≤ 7.2.* (semver)
Unaffected: 7.3-rc1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/panthor/panthor_mmu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "761cf9c63274a5b711c3dc829601723215710d2d",
              "status": "affected",
              "version": "647810ec247641eb5aec8caef818919a4518a0b1",
              "versionType": "git"
            },
            {
              "lessThan": "985f5e12f3cdf43030e13c2bbd154913133b5c3f",
              "status": "affected",
              "version": "647810ec247641eb5aec8caef818919a4518a0b1",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/panthor/panthor_mmu.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.10"
            },
            {
              "lessThan": "6.10",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.6",
                  "versionStartIncluding": "6.10",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3-rc1",
                  "versionStartIncluding": "6.10",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/panthor: Add vm_bind region with kbo range overlap check\n\nWhen a VM is created, caller has to specify the range of the address space\ncarve-out set aside for mapping kernel BO\u0027s. That means vm_bind mappings of\nUM-exposed BO\u0027s should not intersect with that region, but at the moment\nwe\u0027re not checking this.\n\nAt first, I thought of giving these values to drm_gpuvm_init() through its\nreserve_{offset, range} arguments, but it turns out that is meant for VM\naddress spans that are not managed through the usual drm_gpuvm split/merge\ncircuit, so storing the end of the user VA range at VM creation time and\ndoing a quick check in the vm_bind ioctl path was the simplest workaround.\n\nThe new check also makes sure vm_bind range doesn\u0027t overflow the size of a\n64-bit unsigned integer. That was already being done further down the call\nstack inside drm_gpuvm_sm_map -\u003e drm_gpuvm_range_valid, but it\u0027s best to\nfail early in the driver before GPUVM functions are invoked so that we\nwon\u0027t waste time allocating vm_bind context resources."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-17T16:09:36.740Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/761cf9c63274a5b711c3dc829601723215710d2d"
        },
        {
          "url": "https://git.kernel.org/stable/c/985f5e12f3cdf43030e13c2bbd154913133b5c3f"
        }
      ],
      "title": "drm/panthor: Add vm_bind region with kbo range overlap check",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-90409",
    "datePublished": "2026-09-17T16:09:36.740Z",
    "dateReserved": "2026-09-11T19:38:34.812Z",
    "dateUpdated": "2026-09-17T16:09:36.740Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-90409",
      "date": "2026-09-29",
      "epss": "0.00198",
      "percentile": "0.08512"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/gpu/drm/panthor/panthor_mmu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "761cf9c63274a5b711c3dc829601723215710d2d",
                    "status": "affected",
                    "version": "647810ec247641eb5aec8caef818919a4518a0b1",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "985f5e12f3cdf43030e13c2bbd154913133b5c3f",
                    "status": "affected",
                    "version": "647810ec247641eb5aec8caef818919a4518a0b1",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/gpu/drm/panthor/panthor_mmu.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.10"
                  },
                  {
                    "lessThan": "6.10",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.2.*",
                    "status": "unaffected",
                    "version": "7.2.6",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.3-rc1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/panthor: Add vm_bind region with kbo range overlap check\n\nWhen a VM is created, caller has to specify the range of the address space\ncarve-out set aside for mapping kernel BO\u0027s. That means vm_bind mappings of\nUM-exposed BO\u0027s should not intersect with that region, but at the moment\nwe\u0027re not checking this.\n\nAt first, I thought of giving these values to drm_gpuvm_init() through its\nreserve_{offset, range} arguments, but it turns out that is meant for VM\naddress spans that are not managed through the usual drm_gpuvm split/merge\ncircuit, so storing the end of the user VA range at VM creation time and\ndoing a quick check in the vm_bind ioctl path was the simplest workaround.\n\nThe new check also makes sure vm_bind range doesn\u0027t overflow the size of a\n64-bit unsigned integer. That was already being done further down the call\nstack inside drm_gpuvm_sm_map -\u003e drm_gpuvm_range_valid, but it\u0027s best to\nfail early in the driver before GPUVM functions are invoked so that we\nwon\u0027t waste time allocating vm_bind context resources."
          }
        ],
        "id": "CVE-2026-90409",
        "lastModified": "2026-09-17T17:17:40.800",
        "metrics": {},
        "published": "2026-09-17T17:17:40.800",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/761cf9c63274a5b711c3dc829601723215710d2d"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/985f5e12f3cdf43030e13c2bbd154913133b5c3f"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-22T16:28:31Z",
      "cve": "CVE-2026-90409",
      "id": "CVE-2026-90409",
      "initial_release_date": "2026-09-22T16:28:31Z",
      "product_status:known_affected": "61",
      "product_status:known_not_affected": "286",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-90409",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-90409.json",
      "version": "2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…