CVE-2026-31734

sched_ext: Fix is_bpf_migration_disabled() false negative on non-PREEMPT_RCU

State
Published
Severity
Not scored
Published
May 1, 2026
Updated
May 11, 2026
Reserved
Mar 9, 2026

Read the record on cve.org

Description

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

sched_ext: Fix is_bpf_migration_disabled() false negative on non-PREEMPT_RCU

Since commit 8e4f0b1ebcf2 ("bpf: use rcu_read_lock_dont_migrate() for trampoline.c"), the BPF prolog (__bpf_prog_enter) calls migrate_disable() only when CONFIG_PREEMPT_RCU is enabled, via rcu_read_lock_dont_migrate(). Without CONFIG_PREEMPT_RCU, the prolog never touches migration_disabled, so migration_disabled == 1 always means the task is truly migration-disabled regardless of whether it is the current task.

The old unconditional p == current check was a false negative in this case, potentially allowing a migration-disabled task to be dispatched to a remote CPU and triggering scx_error in task_can_run_on_remote_rq().

Only apply the p == current disambiguation when CONFIG_PREEMPT_RCU is enabled, where the ambiguity with the BPF prolog still exists.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 8e4f0b1ebcf2180ab594f204f01279a666dadf3b to before 72c43eb2e334febe93018cfb68ae828f55c6e49eAffected
  • 8e4f0b1ebcf2180ab594f204f01279a666dadf3b to before b4992a9446bb9a639007bfd32bf5c5a7e30199e5Affected
  • 8e4f0b1ebcf2180ab594f204f01279a666dadf3b to before 0c4a59df370bea245695c00aaae6ae75747139bdAffected
LinuxLinux
  • 6.18Affected
  • before 6.18Not affected
  • 6.18.22 through 6.18.*Not affected
  • 6.19.12 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.