CVE-2022-50091

locking/csd_lock: Change csdlock_debug from early_param to __setup

State
Published
Severity
Not scored
Published
Jun 18, 2025
Updated
May 11, 2026
Reserved
Jun 18, 2025

Read the record on cve.org

Description

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

locking/csd_lock: Change csdlock_debug from early_param to __setup

The csdlock_debug kernel-boot parameter is parsed by the early_param() function csdlock_debug(). If set, csdlock_debug() invokes static_branch_enable() to enable csd_lock_wait feature, which triggers a panic on arm64 for kernels built with CONFIG_SPARSEMEM=y and CONFIG_SPARSEMEM_VMEMMAP=n.

With CONFIG_SPARSEMEM_VMEMMAP=n, __nr_to_section is called in static_key_enable() and returns NULL, resulting in a NULL dereference because mem_section is initialized only later in sparse_init().

This is also a problem for powerpc because early_param() functions are invoked earlier than jump_label_init(), also resulting in static_key_enable() failures. These failures cause the warning "static key 'xxx' used before call to jump_label_init()".

Thus, early_param is too early for csd_lock_wait to run static_branch_enable(), so changes it to __setup to fix these.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 8d0968cc6b8ffd8496c2ebffdfdc801f949a85e5 to before d2cbdbe22b5f190055d2d0ae92e7454479343a30Affected
  • 8d0968cc6b8ffd8496c2ebffdfdc801f949a85e5 to before 05de9e2e33b1625c71aee69e353fe906dd2be88aAffected
  • 8d0968cc6b8ffd8496c2ebffdfdc801f949a85e5 to before b480d1e9a8c11ecc1c99dc01814b28e3103bd0a0Affected
  • 8d0968cc6b8ffd8496c2ebffdfdc801f949a85e5 to before 9c9b26b0df270d4f9246e483a44686fca951a29cAffected
LinuxLinux
  • 5.13Affected
  • before 5.13Not affected
  • 5.15.61 through 5.15.*Not affected
  • 5.18.18 through 5.18.*Not affected
  • 5.19.2 through 5.19.*Not affected
  • 6.0 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.