CVE-2026-31734

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.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*

History

11 Nov 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: sched_ext: Solución de falso negativo en is_bpf_migration_disabled() en no-PREEMPT_RCU Desde el commit 8e4f0b1ebcf2 (’bpf: usar rcu_read_lock_dont_migrate() para trampoline.c’), el prólogo BPF (__bpf_prog_enter) llama a migrate_disable() solo cuando CONFIG_PREEMPT_RCU está habilitado, a través de rcu_read_lock_dont_migrate(). Sin CONFIG_PREEMPT_RCU, el prólogo nunca toca migration_disabled, por lo que migration_disabled == 1 siempre significa que la tarea tiene la migración verdaderamente deshabilitada, independientemente de si es la tarea actual. La antigua comprobación incondicional p == current era un falso negativo en este caso, lo que potencialmente permitía que una tarea con la migración deshabilitada fuera despachada a una CPU remota y desencadenando scx_error en task_can_run_on_remote_rq(). Solo aplicar la desambiguación p == current cuando CONFIG_PREEMPT_RCU está habilitado, donde la ambigüedad con el prólogo BPF aún existe.

Information

Published : 2026-05-01 15:16

Updated : 2026-11-11 21:10


NVD link : CVE-2026-31734

Mitre link : CVE-2026-31734

CVE.ORG link : CVE-2026-31734


JSON object : View

Products Affected

linux

  • linux_kernel