{"id":"CVE-2026-74381","summary":"gpu: host1x: Allow entries in BO caches to be freed","details":"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's\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.","modified":"2026-08-18T03:30:56.396813098Z","published":"2026-08-15T05:58:58.354Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74381.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602"},{"type":"WEB","url":"https://git.kernel.org/stable/c/3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc"},{"type":"WEB","url":"https://git.kernel.org/stable/c/71c017b3f83ff72638f2a1b1d6d4e7bc61d30231"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8c0d3cf0d5108c96317e0eca92b60dd368867cef"},{"type":"WEB","url":"https://git.kernel.org/stable/c/af755456299d44e4ed6af3b7c70a7f03ea37fdf1"},{"type":"WEB","url":"https://git.kernel.org/stable/c/df63c76f9c8d881ca7bce1aecfba512328d0527d"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74381.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-74381"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"1f39b1dfa53c84b56d7ad37fed44afda7004959d"},{"fixed":"af755456299d44e4ed6af3b7c70a7f03ea37fdf1"},{"fixed":"71c017b3f83ff72638f2a1b1d6d4e7bc61d30231"},{"fixed":"0e9dd7cfb9986b78cc81eca126ccfbf57f4c0602"},{"fixed":"8c0d3cf0d5108c96317e0eca92b60dd368867cef"},{"fixed":"df63c76f9c8d881ca7bce1aecfba512328d0527d"},{"fixed":"3cbf5e3c46e66d9b3b6b91099bb720c6cb1be3bc"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74381.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"5.17.0"},{"fixed":"6.1.178"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.145"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.97"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.40"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.1.5"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74381.json"}}],"schema_version":"1.9.0"}