GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-74381 (GCVE-0-2026-74381)

Vulnerability from cvelistv5 – Published: 2026-08-15 05:58 – Updated: 2026-08-17 05:18
VLAI
Title
gpu: host1x: Allow entries in BO caches to be freed
Summary
In the Linux kernel, the following vulnerability has been resolved: gpu: host1x: Allow entries in BO caches to be freed When a buffer object is pinned via host1x_bo_pin() with a cache, the resulting mapping is kept in the cache so it can be reused on subsequent pins. Each mapping held a reference to the underlying host1x_bo (taken in tegra_bo_pin / gather_bo_pin), so as long as a mapping was cached, the bo itself could not be freed. However, the only way to remove the cached mapping was through the free path of the buffer object. This meant that if a bo got cached, it could never get freed again. Resolve the circularity by holding a weak reference to the bo from the cache side. This is done by having the .pin callbacks not bump the bo's refcount -- instead the common Host1x bo code does so, except for the cache reference. Also move the remove-cache-mapping-on-free code into a common function inside Host1x code. This is only called from the TegraDRM GEM buffers since those are the only ones that can be cached at the moment.
Severity
No CVSS data available.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < af755456299d44e4ed6af3b7c70a7f03ea37fdf1 (git)
Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < 71c017b3f83ff72638f2a1b1d6d4e7bc61d30231 (git)
Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < 0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602 (git)
Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < 8c0d3cf0d5108c96317e0eca92b60dd368867cef (git)
Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < df63c76f9c8d881ca7bce1aecfba512328d0527d (git)
Affected: 1f39b1dfa53c84b56d7ad37fed44afda7004959d , < 3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.17
Unaffected: 0 , < 5.17 (semver)
Unaffected: 6.1.178 , ≤ 6.1.* (semver)
Unaffected: 6.6.145 , ≤ 6.6.* (semver)
Unaffected: 6.12.97 , ≤ 6.12.* (semver)
Unaffected: 6.18.40 , ≤ 6.18.* (semver)
Unaffected: 7.1.5 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (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/tegra/gem.c",
            "drivers/gpu/drm/tegra/submit.c",
            "drivers/gpu/host1x/bus.c",
            "include/linux/host1x.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "af755456299d44e4ed6af3b7c70a7f03ea37fdf1",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            },
            {
              "lessThan": "71c017b3f83ff72638f2a1b1d6d4e7bc61d30231",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            },
            {
              "lessThan": "0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            },
            {
              "lessThan": "8c0d3cf0d5108c96317e0eca92b60dd368867cef",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            },
            {
              "lessThan": "df63c76f9c8d881ca7bce1aecfba512328d0527d",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            },
            {
              "lessThan": "3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc",
              "status": "affected",
              "version": "1f39b1dfa53c84b56d7ad37fed44afda7004959d",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/tegra/gem.c",
            "drivers/gpu/drm/tegra/submit.c",
            "drivers/gpu/host1x/bus.c",
            "include/linux/host1x.h"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.17"
            },
            {
              "lessThan": "5.17",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.178",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.145",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.97",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.40",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.178",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.145",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.97",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.40",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.5",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ngpu: host1x: Allow entries in BO caches to be freed\n\nWhen a buffer object is pinned via host1x_bo_pin() with a cache, the\nresulting mapping is kept in the cache so it can be reused on subsequent\npins. Each mapping held a reference to the underlying host1x_bo (taken\nin tegra_bo_pin / gather_bo_pin), so as long as a mapping was cached,\nthe bo itself could not be freed.\n\nHowever, the only way to remove the cached mapping was through the free\npath of the buffer object. This meant that if a bo got cached, it could\nnever get freed again.\n\nResolve the circularity by holding a weak reference to the bo from the\ncache side. This is done by having the .pin callbacks not bump the bo\u0027s\nrefcount -- instead the common Host1x bo code does so, except for the\ncache reference.\n\nAlso move the remove-cache-mapping-on-free code into a common function\ninside Host1x code. This is only called from the TegraDRM GEM buffers\nsince those are the only ones that can be cached at the moment."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-17T05:18:19.071Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/af755456299d44e4ed6af3b7c70a7f03ea37fdf1"
        },
        {
          "url": "https://git.kernel.org/stable/c/71c017b3f83ff72638f2a1b1d6d4e7bc61d30231"
        },
        {
          "url": "https://git.kernel.org/stable/c/0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602"
        },
        {
          "url": "https://git.kernel.org/stable/c/8c0d3cf0d5108c96317e0eca92b60dd368867cef"
        },
        {
          "url": "https://git.kernel.org/stable/c/df63c76f9c8d881ca7bce1aecfba512328d0527d"
        },
        {
          "url": "https://git.kernel.org/stable/c/3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc"
        }
      ],
      "title": "gpu: host1x: Allow entries in BO caches to be freed",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-74381",
    "datePublished": "2026-08-15T05:58:58.354Z",
    "dateReserved": "2026-08-15T05:44:03.890Z",
    "dateUpdated": "2026-08-17T05:18:19.071Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-74381",
      "date": "2026-09-05",
      "epss": "0.00173",
      "percentile": "0.06817"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-74381\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-15T06:22:39.927\",\"lastModified\":\"2026-08-17T06:19:32.973\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ngpu: host1x: Allow entries in BO caches to be freed\\n\\nWhen a buffer object is pinned via host1x_bo_pin() with a cache, the\\nresulting mapping is kept in the cache so it can be reused on subsequent\\npins. Each mapping held a reference to the underlying host1x_bo (taken\\nin tegra_bo_pin / gather_bo_pin), so as long as a mapping was cached,\\nthe bo itself could not be freed.\\n\\nHowever, the only way to remove the cached mapping was through the free\\npath of the buffer object. This meant that if a bo got cached, it could\\nnever get freed again.\\n\\nResolve the circularity by holding a weak reference to the bo from the\\ncache side. This is done by having the .pin callbacks not bump the bo\u0027s\\nrefcount -- instead the common Host1x bo code does so, except for the\\ncache reference.\\n\\nAlso move the remove-cache-mapping-on-free code into a common function\\ninside Host1x code. This is only called from the TegraDRM GEM buffers\\nsince those are the only ones that can be cached at the moment.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/gpu/drm/tegra/gem.c\",\"drivers/gpu/drm/tegra/submit.c\",\"drivers/gpu/host1x/bus.c\",\"include/linux/host1x.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"af755456299d44e4ed6af3b7c70a7f03ea37fdf1\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"71c017b3f83ff72638f2a1b1d6d4e7bc61d30231\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"8c0d3cf0d5108c96317e0eca92b60dd368867cef\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"df63c76f9c8d881ca7bce1aecfba512328d0527d\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"1f39b1dfa53c84b56d7ad37fed44afda7004959d\",\"lessThan\":\"3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/gpu/drm/tegra/gem.c\",\"drivers/gpu/drm/tegra/submit.c\",\"drivers/gpu/host1x/bus.c\",\"include/linux/host1x.h\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.17\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.17\",\"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\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/71c017b3f83ff72638f2a1b1d6d4e7bc61d30231\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8c0d3cf0d5108c96317e0eca92b60dd368867cef\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/af755456299d44e4ed6af3b7c70a7f03ea37fdf1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/df63c76f9c8d881ca7bce1aecfba512328d0527d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-20T20:53:35+00:00",
      "cve": "CVE-2026-74381",
      "id": "CVE-2026-74381",
      "initial_release_date": "2026-08-15T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: gpu: host1x: Allow entries in BO caches to be freed",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-74381.json",
      "version": "3"
    }
  }
}



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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…