CVE-2022-49804

s390: avoid using global register for current_stack_pointer

State
Published
Severity
7.8 High
Published
May 1, 2025
Updated
Aug 5, 2026
Reserved
May 1, 2025

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

s390: avoid using global register for current_stack_pointer

Commit 30de14b1884b ("s390: current_stack_pointer shouldn't be a function") made current_stack_pointer a global register variable like on many other architectures. Unfortunately on s390 it uncovers old gcc bug which is fixed only since gcc-9.1 [gcc commit 3ad7fed1cc87 ("S/390: Fix PR89775. Stackpointer save/restore instructions removed")] and backported to gcc-8.4 and later. Due to this bug gcc versions prior to 8.4 generate broken code which leads to stack corruptions.

Current minimal gcc version required to build the kernel is declared as 5.1. It is not possible to fix all old gcc versions, so work around this problem by avoiding using global register variable for current_stack_pointer.

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 30de14b1884ba609fc1acfba5b40309e3a6ccefe to before a478952a8ac44e32316dc046a063a7dc34825aa6Affected
  • 30de14b1884ba609fc1acfba5b40309e3a6ccefe to before e3c11025bcd2142a61abe5806b2f86a0e78118dfAffected
LinuxLinux
  • 5.18Affected
  • before 5.18Not affected
  • 6.0.10 through 6.0.*Not affected
  • 6.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.