CVE-2022-49675

tick/nohz: unexport __init-annotated tick_nohz_full_setup()

State
Published
Severity
Not scored
Published
Feb 26, 2025
Updated
May 11, 2026
Reserved
Feb 26, 2025

Read the record on cve.org

Description

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

tick/nohz: unexport __init-annotated tick_nohz_full_setup()

EXPORT_SYMBOL and __init is a bad combination because the .init.text section is freed up after the initialization. Hence, modules cannot use symbols annotated __init. The access to a freed symbol may end up with kernel panic.

modpost used to detect it, but it had been broken for a decade.

Commit 28438794aba4 ("modpost: fix section mismatch check for exported init/exit sections") fixed it so modpost started to warn it again, then this showed up:

MODPOST vmlinux.symvers WARNING: modpost: vmlinux.o(___ksymtab_gpl+tick_nohz_full_setup+0x0): Section mismatch in reference from the variable __ksymtab_tick_nohz_full_setup to the function .init.text:tick_nohz_full_setup() The symbol tick_nohz_full_setup is exported and annotated __init Fix this by removing the __init annotation of tick_nohz_full_setup or drop the export.

Drop the export because tick_nohz_full_setup() is only called from the built-in code in kernel/sched/isolation.c.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • ae9e557b5be2e285f48ee945d9c8faf75d4f6a66 to before c4ff3ffe0138234774602152fe67e3a898c615c6Affected
  • ae9e557b5be2e285f48ee945d9c8faf75d4f6a66 to before f4a80ec8c51d68be4b7a7830c510f75080c5e417Affected
  • ae9e557b5be2e285f48ee945d9c8faf75d4f6a66 to before ea32b27e2f8c58c92bff5ecba7fcf64b97707089Affected
  • ae9e557b5be2e285f48ee945d9c8faf75d4f6a66 to before 2390095113e98fc52fffe35c5206d30d9efe3f78Affected
LinuxLinux
  • 5.5Affected
  • before 5.5Not affected
  • 5.10.128 through 5.10.*Not affected
  • 5.15.52 through 5.15.*Not affected
  • 5.18.9 through 5.18.*Not affected
  • 5.19 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.