{"id":"CVE-2026-72245","state":"PUBLISHED","title":"gpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ngpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path\n\nAfter device_initialize(), the embedded struct device in struct\nhost1x_device should be released through the device core with\nput_device().\n\nIn host1x_device_add(), if host1x_device_parse_dt() fails, the current\nerror path frees the object directly with kfree(device). That bypasses\nthe normal device lifetime handling and leaks the reference held on the\nembedded struct device.\n\nThe issue was identified by a static analysis tool I developed and\nconfirmed by manual review.\n\nFix this by using put_device() in the host1x_device_parse_dt() failure\npath.","publishedAt":"2026-08-15T05:54:32.611Z","updatedAt":"2026-08-17T05:11:03.666Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"a408d89e20d38d78f540e1951dc4c6056ad662e1","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"4ee41361c637eafa80f5d88b46d0016e6cdb24db","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"3642d0a45214e3b4cf61bf5e75b04b490d0b3519","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"edc7267b59a465c6ae7c5ffac2171c30962bd325","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"4454caa204a2edb19c62754ddb96e5dbca0d2f49","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"c4d6442ac3ed00041fe4e1df715717ed78a7d37f","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"8559b1501f77a5b5d003790bec170ca449e0c674","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"e75717f9aec04355777be41070890c6a815c76df","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/host1x/bus.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.0","versionType":"semver"},{"version":"5.10.261","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.212","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.178","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.145","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.97","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/host1x/bus.c"]}],"references":["https://git.kernel.org/stable/c/a408d89e20d38d78f540e1951dc4c6056ad662e1","https://git.kernel.org/stable/c/4ee41361c637eafa80f5d88b46d0016e6cdb24db","https://git.kernel.org/stable/c/3642d0a45214e3b4cf61bf5e75b04b490d0b3519","https://git.kernel.org/stable/c/edc7267b59a465c6ae7c5ffac2171c30962bd325","https://git.kernel.org/stable/c/4454caa204a2edb19c62754ddb96e5dbca0d2f49","https://git.kernel.org/stable/c/c4d6442ac3ed00041fe4e1df715717ed78a7d37f","https://git.kernel.org/stable/c/8559b1501f77a5b5d003790bec170ca449e0c674","https://git.kernel.org/stable/c/e75717f9aec04355777be41070890c6a815c76df"],"weaknesses":[],"ingestedAt":"2026-10-29T20:12:58.252Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/72xxx/CVE-2026-72245.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-72245","state":"PUBLISHED","datePublished":"2026-08-15T05:54:32.611Z","dateUpdated":"2026-08-17T05:11:03.666Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-08-09T03:40:39.914Z"},"containers":{"cna":{"title":"gpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ngpu: host1x: Fix device reference leak in host1x_device_parse_dt() error path\n\nAfter device_initialize(), the embedded struct device in struct\nhost1x_device should be released through the device core with\nput_device().\n\nIn host1x_device_add(), if host1x_device_parse_dt() fails, the current\nerror path frees the object directly with kfree(device). That bypasses\nthe normal device lifetime handling and leaks the reference held on the\nembedded struct device.\n\nThe issue was identified by a static analysis tool I developed and\nconfirmed by manual review.\n\nFix this by using put_device() in the host1x_device_parse_dt() failure\npath."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"a408d89e20d38d78f540e1951dc4c6056ad662e1","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"4ee41361c637eafa80f5d88b46d0016e6cdb24db","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"3642d0a45214e3b4cf61bf5e75b04b490d0b3519","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"edc7267b59a465c6ae7c5ffac2171c30962bd325","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"4454caa204a2edb19c62754ddb96e5dbca0d2f49","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"c4d6442ac3ed00041fe4e1df715717ed78a7d37f","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"8559b1501f77a5b5d003790bec170ca449e0c674","versionType":"git"},{"version":"f4c5cf88fbd50e4779042268947b2e2f90c20484","status":"affected","lessThan":"e75717f9aec04355777be41070890c6a815c76df","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/host1x/bus.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.0","versionType":"semver"},{"version":"5.10.261","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.212","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.178","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.145","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.97","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/gpu/host1x/bus.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/a408d89e20d38d78f540e1951dc4c6056ad662e1"},{"url":"https://git.kernel.org/stable/c/4ee41361c637eafa80f5d88b46d0016e6cdb24db"},{"url":"https://git.kernel.org/stable/c/3642d0a45214e3b4cf61bf5e75b04b490d0b3519"},{"url":"https://git.kernel.org/stable/c/edc7267b59a465c6ae7c5ffac2171c30962bd325"},{"url":"https://git.kernel.org/stable/c/4454caa204a2edb19c62754ddb96e5dbca0d2f49"},{"url":"https://git.kernel.org/stable/c/c4d6442ac3ed00041fe4e1df715717ed78a7d37f"},{"url":"https://git.kernel.org/stable/c/8559b1501f77a5b5d003790bec170ca449e0c674"},{"url":"https://git.kernel.org/stable/c/e75717f9aec04355777be41070890c6a815c76df"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-17T05:11:03.666Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.10.261"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"5.15.212"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"6.1.178"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"6.6.145"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"6.12.97"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"6.18.40"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"7.1.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.0","versionEndExcluding":"7.2"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}