{"id":"CVE-2026-89459","title":"s390/percpu: Fix MVIY_PERCPU() with older binutils","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\ns390/percpu: Fix MVIY_PERCPU() with older binutils\n\nCommit a737737cdb9c (\"s390/percpu: Infrastructure for more efficient\nthis_cpu operations\") introduced MVIY_PERCPU(),…","severity":"high","cvss":7,"cvssVector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","cvssSource":"cna","cwe":["CWE-88"],"vendor":"Linux","product":"Linux","affected":["Linux >= a737737cdb9c94e40a9926cdc2320f874c05d709 < 91770b08a120967077ae78600612f18bc5ee3caf","Linux >= a737737cdb9c94e40a9926cdc2320f874c05d709 < 101782f8945a125044347312d74d488c05741c4a","Linux 7.2"],"published":"2026-09-11","updated":"2026-10-19","sourceUpdated":"2026-10-19T08:47:08.639Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-89459","references":[{"url":"https://git.kernel.org/stable/c/91770b08a120967077ae78600612f18bc5ee3caf"},{"url":"https://git.kernel.org/stable/c/101782f8945a125044347312d74d488c05741c4a"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89459.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-89459"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2532530"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-89459"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-89459"},{"url":"https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-89459.mbox"}],"tags":["cve.org","csaf","vex","red-hat"],"epss":0.00141,"epssPercentile":0.03433,"scores":{"cna":7,"vendor":5.5},"ingestedAt":"2026-09-14T15:23:07.475Z","slug":"CVE-2026-89459","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ns390/percpu: Fix MVIY_PERCPU() with older binutils\n\nCommit a737737cdb9c (\"s390/percpu: Infrastructure for more efficient\nthis_cpu operations\") introduced MVIY_PERCPU(), which stringifies\narguments that are already C string literals. This generates an\nassembler macro invocation with whitespace-separated quoted arguments:\n\n  GEN_MVIY \"459712\" \"%r3\"\n\nGNU as versions prior to binutils 2.39 drop the separating whitespace\nbetween quoted macro arguments during input scrubbing. They\nconsequently parse the invocation as a single argument and emit\nrepeated warnings:\n\n  Warning: missing closing `\"'\n\nThe .ifc in GEN_MVIY never matches and GNU as exits successfully\nwithout emitting the mviy instruction. As a result, the interrupted\nper-CPU sequence is not marked in lowcore and the exception return\npath cannot repair the per-CPU address register after migration.\n\nAll MVIY_PERCPU() callers pass C string literals. Use them directly\nand separate the assembler macro arguments with an explicit comma. The\nresulting invocation is:\n\n  GEN_MVIY 459712, %r3\n\nThis form is unambiguous for GNU as and LLVM's integrated assembler.\nThis behavior was fixed in GNU as from binutils 2.39, but Linux\nsupports binutils 2.30.\n\n## Affected\n\n- `Linux >= a737737cdb9c94e40a9926cdc2320f874c05d709 < 91770b08a120967077ae78600612f18bc5ee3caf`\n- `Linux >= a737737cdb9c94e40a9926cdc2320f874c05d709 < 101782f8945a125044347312d74d488c05741c4a`\n- `Linux 7.2`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Vendor advisories\n\n- **Red Hat VEX** · Moderate · updated 2026-09-15 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-89459.json)","depth":"twilight","depthScore":39,"depthScoreParts":{"impact":38.5,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[{"seq":224758,"id":"CVE-2026-89459","ts":1792401525084,"field":"cvss","old":"5.5","new":"7"},{"seq":224757,"id":"CVE-2026-89459","ts":1792401525084,"field":"severity","old":"medium","new":"high"},{"seq":203918,"id":"CVE-2026-89459","ts":1789490221682,"field":"cvss","old":"4.1","new":"5.5"},{"seq":202787,"id":"CVE-2026-89459","ts":1789403721195,"field":"cvss","old":"7","new":"4.1"},{"seq":202786,"id":"CVE-2026-89459","ts":1789403721195,"field":"severity","old":"high","new":"medium"},{"seq":198046,"id":"CVE-2026-89459","ts":1789384321532,"field":"cvss","old":"4.1","new":"7"},{"seq":198045,"id":"CVE-2026-89459","ts":1789384321532,"field":"severity","old":"medium","new":"high"},{"seq":183536,"id":"CVE-2026-89459","ts":1789356675788,"field":"cvss","old":"7","new":"4.1"},{"seq":183535,"id":"CVE-2026-89459","ts":1789356675788,"field":"severity","old":"high","new":"medium"},{"seq":153238,"id":"CVE-2026-89459","ts":1789285349682,"field":"cvss","old":null,"new":"7"},{"seq":153237,"id":"CVE-2026-89459","ts":1789285349682,"field":"severity","old":"none","new":"high"},{"seq":147063,"id":"CVE-2026-89459","ts":1789270195011,"field":"cvss","old":null,"new":"4.1"},{"seq":147062,"id":"CVE-2026-89459","ts":1789270195011,"field":"severity","old":"none","new":"medium"}]}