Home

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.

PUBLISHED Reserved 2026-03-09 | Published 2026-05-01 | Updated 2026-05-01 | Assigner Linux

Product status

Default status
unaffected

8e4f0b1ebcf2180ab594f204f01279a666dadf3b (git) before 72c43eb2e334febe93018cfb68ae828f55c6e49e
affected

8e4f0b1ebcf2180ab594f204f01279a666dadf3b (git) before b4992a9446bb9a639007bfd32bf5c5a7e30199e5
affected

8e4f0b1ebcf2180ab594f204f01279a666dadf3b (git) before 0c4a59df370bea245695c00aaae6ae75747139bd
affected

Default status
affected

6.18
affected

Any version before 6.18
unaffected

6.18.22 (semver)
unaffected

6.19.12 (semver)
unaffected

7.0 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/72c43eb2e334febe93018cfb68ae828f55c6e49e

git.kernel.org/...c/b4992a9446bb9a639007bfd32bf5c5a7e30199e5

git.kernel.org/...c/0c4a59df370bea245695c00aaae6ae75747139bd

cve.org (CVE-2026-31734)

nvd.nist.gov (CVE-2026-31734)

Download JSON