{"api_version":"1","generated_at":"2026-05-13T06:20:50+00:00","cve":"CVE-2026-43316","urls":{"html":"https://cve.report/CVE-2026-43316","api":"https://cve.report/api/cve/CVE-2026-43316.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-43316","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-43316"},"summary":{"title":"media: solo6x10: Check for out of bounds chip_id","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: solo6x10: Check for out of bounds chip_id\n\nClang with CONFIG_UBSAN_SHIFT=y noticed a condition where a signed type\n(literal \"1\" is an \"int\") could end up being shifted beyond 32 bits,\nso instrumentation was added (and due to the double is_tw286x() call\nseen via inlining), Clang decides the second one must now be undefined\nbehavior and elides the rest of the function[1]. This is a known problem\nwith Clang (that is still being worked on), but we can avoid the entire\nproblem by actually checking the existing max chip ID, and now there is\nno runtime instrumentation added at all since everything is known to be\nwithin bounds.\n\nAdditionally use an unsigned value for the shift to remove the\ninstrumentation even without the explicit bounds checking.\n\n[hverkuil: fix checkpatch warning for is_tw286x]","state":"PUBLISHED","assigner":"Linux","published_at":"2026-05-08 14:16:40","updated_at":"2026-05-12 14:10:27"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/d29f33b2cf98e4901cd5457d1ee34062e808df73","name":"https://git.kernel.org/stable/c/d29f33b2cf98e4901cd5457d1ee34062e808df73","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/4d6db0c6bbbfd8d7bbdbf7ab6a9c003752abf116","name":"https://git.kernel.org/stable/c/4d6db0c6bbbfd8d7bbdbf7ab6a9c003752abf116","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/5849ae68d7b8b6ad55cc1bf0d227dd2ae6362528","name":"https://git.kernel.org/stable/c/5849ae68d7b8b6ad55cc1bf0d227dd2ae6362528","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/0fdf6323c35a134f206dcad5babb4ff488552076","name":"https://git.kernel.org/stable/c/0fdf6323c35a134f206dcad5babb4ff488552076","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/0b3dadada2417782a63ce32dae05bafe1c949e3f","name":"https://git.kernel.org/stable/c/0b3dadada2417782a63ce32dae05bafe1c949e3f","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/603e3859393ee2ce91393b7d05e6e56e4b66e5cd","name":"https://git.kernel.org/stable/c/603e3859393ee2ce91393b7d05e6e56e4b66e5cd","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/33af366211ee78e3b074ff44a16121e537e86826","name":"https://git.kernel.org/stable/c/33af366211ee78e3b074ff44a16121e537e86826","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c327192ca26670cf6e588c1eeda66cd2fa97630e","name":"https://git.kernel.org/stable/c/c327192ca26670cf6e588c1eeda66cd2fa97630e","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-43316","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-43316","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac c327192ca26670cf6e588c1eeda66cd2fa97630e git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 0b3dadada2417782a63ce32dae05bafe1c949e3f git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 603e3859393ee2ce91393b7d05e6e56e4b66e5cd git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 33af366211ee78e3b074ff44a16121e537e86826 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 5849ae68d7b8b6ad55cc1bf0d227dd2ae6362528 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac d29f33b2cf98e4901cd5457d1ee34062e808df73 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 4d6db0c6bbbfd8d7bbdbf7ab6a9c003752abf116 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected faa4fd2a09517b39cc1f5d622453f97a59acfdac 0fdf6323c35a134f206dcad5babb4ff488552076 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 2.6.36","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 2.6.36 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.252 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.202 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.165 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.128 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.75 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.16 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19.6 6.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"43316","cve":"CVE-2026-43316","epss":"0.000240000","percentile":"0.070360000","score_date":"2026-05-12","updated_at":"2026-05-13 00:11:53"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/media/pci/solo6x10/solo6x10-tw28.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"c327192ca26670cf6e588c1eeda66cd2fa97630e","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"0b3dadada2417782a63ce32dae05bafe1c949e3f","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"603e3859393ee2ce91393b7d05e6e56e4b66e5cd","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"33af366211ee78e3b074ff44a16121e537e86826","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"5849ae68d7b8b6ad55cc1bf0d227dd2ae6362528","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"d29f33b2cf98e4901cd5457d1ee34062e808df73","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"4d6db0c6bbbfd8d7bbdbf7ab6a9c003752abf116","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"},{"lessThan":"0fdf6323c35a134f206dcad5babb4ff488552076","status":"affected","version":"faa4fd2a09517b39cc1f5d622453f97a59acfdac","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/media/pci/solo6x10/solo6x10-tw28.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"2.6.36"},{"lessThan":"2.6.36","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.252","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.202","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.165","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.128","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.75","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.16","versionType":"semver"},{"lessThanOrEqual":"6.19.*","status":"unaffected","version":"6.19.6","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.0","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.252","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.202","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.165","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.128","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.75","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.16","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.19.6","versionStartIncluding":"2.6.36","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0","versionStartIncluding":"2.6.36","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: solo6x10: Check for out of bounds chip_id\n\nClang with CONFIG_UBSAN_SHIFT=y noticed a condition where a signed type\n(literal \"1\" is an \"int\") could end up being shifted beyond 32 bits,\nso instrumentation was added (and due to the double is_tw286x() call\nseen via inlining), Clang decides the second one must now be undefined\nbehavior and elides the rest of the function[1]. This is a known problem\nwith Clang (that is still being worked on), but we can avoid the entire\nproblem by actually checking the existing max chip ID, and now there is\nno runtime instrumentation added at all since everything is known to be\nwithin bounds.\n\nAdditionally use an unsigned value for the shift to remove the\ninstrumentation even without the explicit bounds checking.\n\n[hverkuil: fix checkpatch warning for is_tw286x]"}],"providerMetadata":{"dateUpdated":"2026-05-11T22:22:12.135Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/c327192ca26670cf6e588c1eeda66cd2fa97630e"},{"url":"https://git.kernel.org/stable/c/0b3dadada2417782a63ce32dae05bafe1c949e3f"},{"url":"https://git.kernel.org/stable/c/603e3859393ee2ce91393b7d05e6e56e4b66e5cd"},{"url":"https://git.kernel.org/stable/c/33af366211ee78e3b074ff44a16121e537e86826"},{"url":"https://git.kernel.org/stable/c/5849ae68d7b8b6ad55cc1bf0d227dd2ae6362528"},{"url":"https://git.kernel.org/stable/c/d29f33b2cf98e4901cd5457d1ee34062e808df73"},{"url":"https://git.kernel.org/stable/c/4d6db0c6bbbfd8d7bbdbf7ab6a9c003752abf116"},{"url":"https://git.kernel.org/stable/c/0fdf6323c35a134f206dcad5babb4ff488552076"}],"title":"media: solo6x10: Check for out of bounds chip_id","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-43316","datePublished":"2026-05-08T13:26:12.217Z","dateReserved":"2026-05-01T14:12:56.001Z","dateUpdated":"2026-05-11T22:22:12.135Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-05-08 14:16:40","lastModifiedDate":"2026-05-12 14:10:27","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"43316","Ordinal":"1","Title":"media: solo6x10: Check for out of bounds chip_id","CVE":"CVE-2026-43316","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"43316","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: solo6x10: Check for out of bounds chip_id\n\nClang with CONFIG_UBSAN_SHIFT=y noticed a condition where a signed type\n(literal \"1\" is an \"int\") could end up being shifted beyond 32 bits,\nso instrumentation was added (and due to the double is_tw286x() call\nseen via inlining), Clang decides the second one must now be undefined\nbehavior and elides the rest of the function[1]. This is a known problem\nwith Clang (that is still being worked on), but we can avoid the entire\nproblem by actually checking the existing max chip ID, and now there is\nno runtime instrumentation added at all since everything is known to be\nwithin bounds.\n\nAdditionally use an unsigned value for the shift to remove the\ninstrumentation even without the explicit bounds checking.\n\n[hverkuil: fix checkpatch warning for is_tw286x]","Type":"Description","Title":"media: solo6x10: Check for out of bounds chip_id"}]}}}