{"id":"CVE-2026-90195","summary":"riscv, bpf: Fix missing sign-ext for signed 1-byte and 2-byte kfunc args","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nriscv, bpf: Fix missing sign-ext for signed 1-byte and 2-byte kfunc args\n\nOn RV64, the ABI requires sign-extension for signed 1-byte and 2-byte kfunc\nargs. However, the RV64 JIT currently does not perform sign-extension for\nsuch kfunc args.\n\nBefore commit 7ce090afbf72 (\"bpf: Infer zext_dst based on static register\nliveness analysis\"), state pruning could potentially omit zero-extension\nof 32-bit subregisters, which inadvertently masked the above issue by making\nthe args appear as if they had been properly sign-extended. After that\ncommit, the problem is exposed, causing the kfunc_call/kfunc_call_test4\nselftest to fail.\n\nFix this by extending the existing sign-extension logic to handle signed\n1-byte and 2-byte kfunc args as well.","modified":"2026-09-18T03:48:36.046904170Z","published":"2026-09-17T16:07:14.979Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90195.json","cna_assigner":"Linux"},"references":[{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"},{"type":"WEB","url":"https://git.kernel.org/stable/c/555fc6f1caf00ce7005e732b688da26c0dc3c5c5"},{"type":"WEB","url":"https://git.kernel.org/stable/c/71dbd143be598954ae103feadd12692aeb0f2f88"},{"type":"WEB","url":"https://git.kernel.org/stable/c/801ae90f8ce099187e6224cec7d72d07a4df0324"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f2aaa621591093cfe8224a25ef2f04a3b1e304b0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90195.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-90195"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"443574b033876c85a35de4c65c14f7fe092222b2"},{"fixed":"555fc6f1caf00ce7005e732b688da26c0dc3c5c5"},{"fixed":"801ae90f8ce099187e6224cec7d72d07a4df0324"},{"fixed":"71dbd143be598954ae103feadd12692aeb0f2f88"},{"fixed":"f2aaa621591093cfe8224a25ef2f04a3b1e304b0"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90195.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"6.9.0"},{"fixed":"6.12.110"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.52"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.2.6"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90195.json"}}],"schema_version":"1.9.0"}