Repository navigation
What's Changed
- versions: bump versions for 1.1.3 August 2026 release by @htejun in #3749
- Pr/cake portable topology by @RitzDaCat in #3755
- scx_mitosis: Mark init_task callback sleepable by @kkdwvd in #3753
- scx_mitosis: Prepare for subcell support by @kkdwvd in #3740
- scx_mitosis: Close the lost-wakeup window when disabling llc draining by @htejun in #3760
- scx_utils, cid: SCX_OPS_TID_TO_TASK compat probe and cmask helpers by @htejun in #3762
- scx_utils: Require CONFIG_FUNCTION_TRACER for scx_lib_init_probe() by @EricccTaiwan in #3758
- lib: Multi-instance sdt allocator and arena-backed per-cgroup data by @htejun in #3761
- scx_pandemoniumv5.19.0: by @wllclngn in #3756
- scx_lavd: validate cached CPU pick against cpus_ptr on REENQ path by @1343503048 in #3748
- lib: Add scx_task/cgrp_free_rcu(), poor man's RCU deferred freeing by @htejun in #3765
- scx_bpfland: Use SCX_ENQ_IMMED instead of cpu_release() by @EricccTaiwan in #3757
- common.bpf.h: default __scx_prolog_disables_migration to false by @multics69 in #3766
- scx_cake: select_cpu redesign — self-park mailboxes become default (2… by @RitzDaCat in #3767
- lib: Make scx_alloc_internal() a global function by @htejun in #3768
- lib: cmask distribute helpers and caller-chosen allocator element alignment by @htejun in #3770
- lib: Guard the arena NULL pages and watch BPF streams by @htejun in #3771
- scx_mitosis: Three small cleanups by @htejun in #3773
- lib/sdt_task: free task data without deleting task_storage by @multics69 in #3776
- scx_lavd: restrict direct dispatch to usable, uncongested CPUs by @multics69 in #3735
- scx_cosmos: Expand GPU locality hints to cgroup workloads by @nvax-r in #3772
- scx_mitosis: Fix solo-task placement staleness and test script robustness by @htejun in #3774
- scx_nitosis: Add an experimental cid-form, arena-based fork of scx_mitosis by @htejun in #3775
- Cargo: update libbpf to latest versions by @sirlucjan in #3751
- common.bpf.h: probe the BPF prolog on the cid-form attach path too by @devnexen in #3778
- scx_cosmos: Avoid redundant kicks after local dispatch by @arighi in #3777
- scx_cosmos: Avoid redundant shared DSQ kicks by @arighi in #3782
- scx_cosmos: Rework direct dispatch by @arighi in #3783
- scx_cosmos: Re-introduce direct dispatch in ops.enqueue() by @arighi in #3788
- scx_pandemoniumv5.20.0: by @wllclngn in #3785
- scx_cake 1.2.1 gaming regression hotfix by @RitzDaCat in #3786
- scx_cosmos: Contain tasks in the primary domain unless it is overloaded by @arighi in #3789
- scx_cosmos: Replace polled CPU utilization with in-BPF accounting by @arighi in #3790
- scheds/experimental: Introduce scx_cidland by @arighi in #3784
- scx_mlfq 1.3.11-zero by @galpt in #3787
- scx_cidland: Rework virtual deadline accounting toward EEVDF by @arighi in #3796
- scx_lavd: stop the bogus "no task data" errors from the futex hooks by @multics69 in #3781
- scx: bump rust edition to 2024 and rust version 1.91 by @sirlucjan in #3798
- scx_mitosis: Always use tracepoints for cgroup tracking by @dforsyth in #3769
- scx_bpfland: Remove experimental TIMELY mode by @galpt in #3801
- scx_cidland: Port fair/EEVDF to sched_ext by @arighi in #3800
- scx_lavd: scale the compete window by online CPUs, not active ones by @multics69 in #3805
- scx_flow: Update to 4.2.24 by @galpt in #3804
- scx_flow: Keep Cargo.toml compatible with Rust 1.91 by @arighi in #3808
- lib/cgroup_bw: manage only cpu.max-limited cgroups by @multics69 in #3754
- scx_lavd: fix and rate-limit the CPU performance target for schedutil governor by @multics69 in #3793
- scx: Shared helpers for the next scx_cidland series by @arighi in #3807
- scx_cidland: Next round of fair/EEVDF fidelity changes by @arighi in #3811
- Cargo: update libbpf to latest versions. by @sirlucjan in #3810
- scx_cidland: Move queues and task context to BPF arena by @arighi in #3812
- scx_arena: Fall back to map-in-map grace periods where membarrier cannot wait by @htejun in #3809
- scx_cidland: Cgroup scheduling and hierarchical load balancing by @arighi in #3813
- scx_lavd: Fix the autopilot flag binding, torn task_ctx cache fills and futex return reads by @htejun in #3815
- lib, scheds/include: cid and arena library prep for cid-form schedulers by @htejun in #3814
- scx: bump rustfmt to 2024 edition by @sirlucjan in #3816
- scx_rustland_core: bump missing file to 2024 edition by @sirlucjan in #3818
- scx_arena: Retry arena page allocations and fail the allocation, not … by @arighi in #3819
- scx_cargo: Work around libbpf's linker mishandling arena externs by @htejun in #3820
- scx_cidland: Preemption and load-balance parity with fair.c by @arighi in #3821
- scx_lavd: extend the overflow set by @multics69 in #3779
- lib/sdt_alloc: Reserve surplus slabs from concurrent refills by @arighi in #3826
- scx_mitosis: Assorted fixes for fairness and vtime errors by @kkdwvd in #3795
- scx_nitosis: preserve arena pointer type in CID topology init by @liulangrenaaa in #3827
- scx_cake: improve CPU placement and tolerate obsolete launcher options by @RitzDaCat in #3797
- lib: TRAILING_OVERLAP() and arena running average operations by @htejun in #3828
- scx_lavd: Drop the suggested_cpu_id clamp in init_task() by @htejun in #3829
- Introduce scx_eevdf: a re-implementation of fair/EEVDF in sched_ext by @arighi in #3825
- scx_lavd: Drop the unused conv_wall_to_invr() and get_cpuperf_cap() by @htejun in #3832
- scheds/include: Make cmask_and(), cmask_or() and cmask_andnot() three-operand by @htejun in #3834
- scx_mavd: Arena-native cid-form fork of scx_lavd by @htejun in #3836
- Build BPF with -mcpu=v4 and move CI to clang 22 by @htejun in #3837
- Add shared idle CID management library by @arighi in #3835
- Probe kernel features at load and use the fetching arena atomics and BPF stream descriptors where available by @htejun in #3839
- scx_arena: Size the per-CPU topology mask for every supported CPU by @devnexen in #3846
- lib/sdt_alloc, scx_rusty: reserve surplus arena pages from concurrent refills by @liulangrenaaa in #3841
- scx_arena: Type the topology node bitmap reference as struct scx_bitmap by @htejun in #3851
- Cargo: update libbpf to latest versions. by @sirlucjan in #3853
- Add AGENTS.md for AI agents working in the tree by @htejun in #3855
- Sync the shared headers and vmlinux.h with kernel sched_ext/for-7.4 by @htejun in #3856
- scx_nitosis: Sync with mitosis through c9b90b3 and add CONVERSION.md by @htejun in #3857
- lib/cid: Split idle CID masks by topology segment by @arighi in #3838
- scx_mavd: Sync with lavd through c9b90b3 and document the procedure by @htejun in #3858
- lib/cid: Add cluster idle scopes and splits by @arighi in #3861
- lib: Introduce upstream libarena by @etsal in #3803
- Eevdf fidelity fixes by @arighi in #3862
- scx_mitosis: Retry the other DSQ when the chosen head got away by @htejun in #3864
- scx_nitosis: Sync with mitosis through 63f2014 by @htejun in #3865
- scx_lavd: fix neighbor migration never firing on non-SMT machines by @multics69 in #3847
- scx_mitosis: Clear the borrowed flag on every enqueue by @htejun in #3867
- scx_nitosis: Sync with mitosis through 140ad09 by @htejun in #3868
- scx_mitosis: Charge running time at every tick and sample the demand metrics over measured intervals by @htejun in #3871
- scx_nitosis: Sync with mitosis through 42378f3 by @htejun in #3872
- scx_mavd: Sync with lavd through e7ed52c by @htejun in #3875
- scx: Add scx_spin_lock(), which aborts the scheduler on a failed acquire by @htejun in #3869
- vmlinux: Update to sched_ext/for-next (a8acb152ff95) by @htejun in #3874
- scx_nitosis: Delegate cells to sub-schedulers by @htejun in #3873
- scx_mavd, scx_nitosis: Drop the __arena pointer tags by @htejun in #3880
- scx_mavd: Make the neighbor-steal functions global by @htejun in #3882
- Cargo: update dependencies to latest versions by @sirlucjan in #3885
- vmlinux: Update to sched_ext/for-next (a52cbf0bdbbf) merged with bpf/for-next (15b578b1715d) by @htejun in #3886
- scx_eevdf: Enable proxy execution support by @arighi in #3888
- scx_eevdf: Bring wakeup preemption and placement closer to fair.c by @arighi in #3889
- scx_eevdf: Bound a group's shares by the CPUs of its cpuset by @arighi in #3891
- scx_pandemoniumv5.23.0: by @wllclngn in #3890
- scx_flow: update to 4.8.11 by @galpt in #3881
- scx_flow: update to 4.8.12 by @galpt in #3892
- scx_eevdf: Revert keeping over-served sleepers in the pack reference by @arighi in #3894
- INSTALL.md: add Devario git package repositories for Arch by @sirlucjan in #3896
- scx_eevdf: Take a lone running member's vruntime as the pack reference by @arighi in #3895
- scx_mitosis: Subcell splitting and demand weighted partitioning by @kkdwvd in #3817
- scx_flow: update to 4.8.14 by @galpt in #3897
- scx_lavd: add a completion-time estimator by @multics69 in #3850
- scx_lavd: completion-time-based migration on big.LITTLE by @multics69 in #3854
- scx_eevdf: Charge a blocking task's last run once by @arighi in #3898
- scx_eevdf: Fix two more deviations from fair.c in the sleep and wakeup path by @arighi in #3899
New Contributors
- @liulangrenaaa made their first contribution in #3827
Full Changelog: v1.1.3...v1.1.4