PT-2026-90175 · Linux · Linux

CVE-2026-89459

·

Published

2026-09-11

·

Updated

2026-09-11

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
s390/percpu: Fix MVIY PERCPU() with older binutils
Commit a737737cdb9c ("s390/percpu: Infrastructure for more efficient this cpu operations") introduced MVIY PERCPU(), which stringifies arguments that are already C string literals. This generates an assembler macro invocation with whitespace-separated quoted arguments:
GEN MVIY "459712" "%r3"
GNU as versions prior to binutils 2.39 drop the separating whitespace between quoted macro arguments during input scrubbing. They consequently parse the invocation as a single argument and emit repeated warnings:
Warning: missing closing `"'
The .ifc in GEN MVIY never matches and GNU as exits successfully without emitting the mviy instruction. As a result, the interrupted per-CPU sequence is not marked in lowcore and the exception return path cannot repair the per-CPU address register after migration.
All MVIY PERCPU() callers pass C string literals. Use them directly and separate the assembler macro arguments with an explicit comma. The resulting invocation is:
GEN MVIY 459712, %r3
This form is unambiguous for GNU as and LLVM's integrated assembler. This behavior was fixed in GNU as from binutils 2.39, but Linux supports binutils 2.30.
Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

CVE-2026-89459

Affected Products

Linux