Linux Kernel RCU Module Unloading Race Condition Vulnerability

Vulnerability

A vulnerability in the Linux kernel's RCU (Read-Copy-Update) subsystem has been addressed. The issue arose in the 'rcuscale' module, where the 'kfree_scale_thread' continued to run after the module was unloaded. This oversight led to a kernel crash, as the thread attempted to access memory that was no longer available. The vulnerability was introduced when the 'kfree_rcu_test' performance test was added, and it could be reproduced by loading the 'rcuscale' module with this test enabled, then unloading the module while the test was still running.

Impact

The vulnerability could lead to a kernel crash (a 'splat'), where the system fails to handle a page fault correctly, attempting to fetch a supervisor instruction from a non-existent page. This error disrupts normal operations and can cause instability in the system.

Reproduction

To reproduce this vulnerability, load the 'rcuscale' module with the 'kfree_rcu_test' option enabled. After some time, unload the 'rcuscale' module and the 'torture' module. This sequence will trigger the vulnerability, causing a page fault error that crashes the kernel.

Remediation

The vulnerability has been fixed in the Linux kernel. Users should upgrade to the latest version where this issue has been addressed.

Added: Sep 16, 2025, 5:01 PM
Updated: Sep 16, 2025, 5:01 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
4.3
remediation
7.7
relevance
0.5
threat
4.8
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.