sched_ext: Fix incorrect autogroup migration detection
Description
In the Linux kernel, the following vulnerability has been resolved:
sched_ext: Fix incorrect autogroup migration detection
scx_move_task() is called from sched_move_task() and tells the BPF scheduler that cgroup migration is being committed. sched_move_task() is used by both cgroup and autogroup migrations and scx_move_task() tried to filter out autogroup migrations by testing the destination cgroup and PF_EXITING but this is not enough. In fact, without explicitly tagging the thread which is doing the cgroup migration, there is no good way to tell apart scx_move_task() invocations for racing migration to the root cgroup and an autogroup migration.
This led to scx_move_task() incorrectly ignoring a migration from non-root cgroup to an autogroup of the root cgroup triggering the following warning:
WARNING: CPU: 7 PID: 1 at kernel/sched/ext.c:3725 scx_cgroup_can_attach+0x196/0x340 ... Call Trace:
cgroup_migrate_execute+0x5b1/0x700 cgroup_attach_task+0x296/0x400 __cgroup_procs_write+0x128/0x140 cgroup_procs_write+0x17/0x30 kernfs_fop_write_iter+0x141/0x1f0 vfs_write+0x31d/0x4a0 __x64_sys_write+0x72/0xf0 do_syscall_64+0x82/0x160 entry_SYSCALL_64_after_hwframe+0x76/0x7e
Fix it by adding an argument to sched_move_task() that indicates whether the moving is for a cgroup or autogroup migration. After the change, scx_move_task() is called only for cgroup migrations and renamed to scx_cgroup_move_task().
Affected products
77- osv-coords75 versionspkg:rpm/almalinux/kernelpkg:rpm/almalinux/kernel-64kpkg:rpm/almalinux/kernel-64k-corepkg:rpm/almalinux/kernel-64k-debugpkg:rpm/almalinux/kernel-64k-debug-corepkg:rpm/almalinux/kernel-64k-debug-develpkg:rpm/almalinux/kernel-64k-debug-devel-matchedpkg:rpm/almalinux/kernel-64k-debug-modulespkg:rpm/almalinux/kernel-64k-debug-modules-corepkg:rpm/almalinux/kernel-64k-debug-modules-extrapkg:rpm/almalinux/kernel-64k-develpkg:rpm/almalinux/kernel-64k-devel-matchedpkg:rpm/almalinux/kernel-64k-modulespkg:rpm/almalinux/kernel-64k-modules-corepkg:rpm/almalinux/kernel-64k-modules-extrapkg:rpm/almalinux/kernel-abi-stablelistspkg:rpm/almalinux/kernel-corepkg:rpm/almalinux/kernel-cross-headerspkg:rpm/almalinux/kernel-debugpkg:rpm/almalinux/kernel-debug-corepkg:rpm/almalinux/kernel-debug-develpkg:rpm/almalinux/kernel-debug-devel-matchedpkg:rpm/almalinux/kernel-debug-modulespkg:rpm/almalinux/kernel-debug-modules-corepkg:rpm/almalinux/kernel-debug-modules-extrapkg:rpm/almalinux/kernel-debug-uki-virtpkg:rpm/almalinux/kernel-develpkg:rpm/almalinux/kernel-devel-matchedpkg:rpm/almalinux/kernel-docpkg:rpm/almalinux/kernel-headerspkg:rpm/almalinux/kernel-modulespkg:rpm/almalinux/kernel-modules-corepkg:rpm/almalinux/kernel-modules-extrapkg:rpm/almalinux/kernel-modules-extra-matchedpkg:rpm/almalinux/kernel-rtpkg:rpm/almalinux/kernel-rt-64kpkg:rpm/almalinux/kernel-rt-64k-corepkg:rpm/almalinux/kernel-rt-64k-debugpkg:rpm/almalinux/kernel-rt-64k-debug-corepkg:rpm/almalinux/kernel-rt-64k-debug-develpkg:rpm/almalinux/kernel-rt-64k-debug-modulespkg:rpm/almalinux/kernel-rt-64k-debug-modules-corepkg:rpm/almalinux/kernel-rt-64k-debug-modules-extrapkg:rpm/almalinux/kernel-rt-64k-develpkg:rpm/almalinux/kernel-rt-64k-modulespkg:rpm/almalinux/kernel-rt-64k-modules-corepkg:rpm/almalinux/kernel-rt-64k-modules-extrapkg:rpm/almalinux/kernel-rt-corepkg:rpm/almalinux/kernel-rt-debugpkg:rpm/almalinux/kernel-rt-debug-corepkg:rpm/almalinux/kernel-rt-debug-develpkg:rpm/almalinux/kernel-rt-debug-modulespkg:rpm/almalinux/kernel-rt-debug-modules-corepkg:rpm/almalinux/kernel-rt-debug-modules-extrapkg:rpm/almalinux/kernel-rt-develpkg:rpm/almalinux/kernel-rt-modulespkg:rpm/almalinux/kernel-rt-modules-corepkg:rpm/almalinux/kernel-rt-modules-extrapkg:rpm/almalinux/kernel-toolspkg:rpm/almalinux/kernel-tools-libspkg:rpm/almalinux/kernel-tools-libs-develpkg:rpm/almalinux/kernel-uki-virtpkg:rpm/almalinux/kernel-uki-virt-addonspkg:rpm/almalinux/kernel-zfcpdumppkg:rpm/almalinux/kernel-zfcpdump-corepkg:rpm/almalinux/kernel-zfcpdump-develpkg:rpm/almalinux/kernel-zfcpdump-devel-matchedpkg:rpm/almalinux/kernel-zfcpdump-modulespkg:rpm/almalinux/kernel-zfcpdump-modules-corepkg:rpm/almalinux/kernel-zfcpdump-modules-extrapkg:rpm/almalinux/libperfpkg:rpm/almalinux/perfpkg:rpm/almalinux/python3-perfpkg:rpm/almalinux/rtlapkg:rpm/almalinux/rv
< 6.12.0-124.8.1.el10_1+ 74 more
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
- (no CPE)range: < 6.12.0-124.8.1.el10_1
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
3News mentions
0No linked articles in our index yet.