{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-98248","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-09-25T10:25:14.330Z","datePublished":"2026-10-06T08:45:16.693Z","dateUpdated":"2026-10-06T08:45:16.693Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-10-06T08:45:16.693Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\narm64: percpu: Fix LSE operations on {8,16}-bit types\n\nThe assembly for __percpu_##name##_case_##sz() and\n__percpu_##name##_return_case_##sz() doesn't use the 'sfx' macro\nargument to form the LSE instruction. Without 'sfx', a W register\nargument will imply a 32-bit memory location, and consequently\n{8,16}-bit ops will erroneously read and write 32 bits of memory when\nthe LSE instruction is used.\n\nFix this by appending 'sfx' to 'op_lse' to LSE instruction. It is not\nnecessary (and not valid) to append 'sfx' to 'op_llsc', as 'op_llsc' is\na register-register operation which does not access memory (and does not\ntake a size suffix)."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["arch/arm64/include/asm/percpu.h"],"versions":[{"version":"959bf2fd03b59fc107584c21425f3dc73c49f762","lessThan":"d69ab4480e49bf925f4781afcc9f284affcb96b6","status":"affected","versionType":"git"},{"version":"959bf2fd03b59fc107584c21425f3dc73c49f762","lessThan":"390742871a723b52de9b92a94c0d1c85a2531e3e","status":"affected","versionType":"git"},{"version":"959bf2fd03b59fc107584c21425f3dc73c49f762","lessThan":"843ace1d0a39e9b1cfcbfb3856a7b0fbdd9cd003","status":"affected","versionType":"git"},{"version":"959bf2fd03b59fc107584c21425f3dc73c49f762","lessThan":"8cf2093f5372952a9ebc805c418d45df7112cd14","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["arch/arm64/include/asm/percpu.h"],"versions":[{"version":"5.0","status":"affected"},{"version":"0","lessThan":"5.0","status":"unaffected","versionType":"semver"},{"version":"6.12.112","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.54","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.2.8","lessThanOrEqual":"7.2.*","status":"unaffected","versionType":"semver"},{"version":"7.3-rc4","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"6.12.112"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"6.18.54"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"7.2.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"7.3-rc4"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/d69ab4480e49bf925f4781afcc9f284affcb96b6"},{"url":"https://git.kernel.org/stable/c/390742871a723b52de9b92a94c0d1c85a2531e3e"},{"url":"https://git.kernel.org/stable/c/843ace1d0a39e9b1cfcbfb3856a7b0fbdd9cd003"},{"url":"https://git.kernel.org/stable/c/8cf2093f5372952a9ebc805c418d45df7112cd14"}],"title":"arm64: percpu: Fix LSE operations on {8,16}-bit types","x_generator":{"engine":"bippy-1.2.0"}}}}