CVE-2026-43115

srcu: Use irq_work to start GP in tiny SRCU

State
Published
Severity
Not scored
Published
May 6, 2026
Updated
Oct 30, 2026
Reserved
May 1, 2026

Read the record on cve.org

Description

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

srcu: Use irq_work to start GP in tiny SRCU

Tiny SRCU's srcu_gp_start_if_needed() directly calls schedule_work(), which acquires the workqueue pool->lock.

This causes a lockdep splat when call_srcu() is called with a scheduler lock held, due to:

call_srcu() [holding pi_lock] srcu_gp_start_if_needed() schedule_work() -> pool->lock

workqueue_init() / create_worker() [holding pool->lock] wake_up_process() -> try_to_wake_up() -> pi_lock

Also add irq_work_sync() to cleanup_srcu_struct() to prevent a use-after-free if a queued irq_work fires after cleanup begins.

Tested with rcutorture SRCU-T and no lockdep warnings.

[ Thanks to Boqun for similar fix in patch "rcu: Use an intermediate irq_work to start process_srcu()" ]

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • d8be81735aa89413b333de488251f0e64e2be591 to before 28768bc7ea0b13f558a70f63cc3cfcd32d55d488Affected
  • d8be81735aa89413b333de488251f0e64e2be591 to before bb37286db65368cb72ba8757ad86299c4e4a73fcAffected
  • d8be81735aa89413b333de488251f0e64e2be591 to before a6fc88b22bc8d12ad52e8412c667ec0f5bf055afAffected
LinuxLinux
  • 4.12Affected
  • before 4.12Not affected
  • 6.18.57 through 6.18.*Not affected
  • 6.19.14 through 6.19.*Not affected
  • 7.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.