v1.0.10
What's Changed
- versions: Bump versions for v1.0.9 release by @htejun in #1306
- scx_lavd: Use time_delta() in a missing place by @multics69 in #1296
- ci: move caching-build to nix built kernel by @JakeHillion in #1302
- scxtop: clean up duplicated entry insertion code by @JakeHillion in #1309
- scx_lavd: Bump version for v1.0.9 release by @htejun in #1310
- scxtop: use struct-in-tuples for Action enum instead of structs by @JakeHillion in #1311
- rust/scx_utils: rebuild scheduler when headers are modified by @etsal in #1312
- scxtop: adding one perf event type
L1-dcache-load-misses. by @devnexen in #1313 - scx_p2dq: Add scx_p2dq scheduler by @hodgesds in #1316
- scripts, scx_utils, scheds: Compatible testing of
SCX_ENQ_CPU_SELECTEDby @multics69 in #1314 - scx_lavd: Revert "scx_lavd: Kick an idle cpu as early as possible on ops.select_cpu()" by @multics69 in #1321
- scx_lavd, scx_top: inlining builtin copies. by @devnexen in #1323
- scripts, scx_utils: Clean up gen_enum_defs.py and the generated header by @multics69 in #1322
- scxtop: track sched_waking events by @JakeHillion in #1318
- scx_p2dq: Fix vtime handling and cleanup by @hodgesds in #1319
- scx_layered: making unexpected gpu error smoother. by @devnexen in #1325
- scx_layered: Remove CPU shuffling when idle CPU is not found in layered_select_cpu() by @htejun in #1329
- scx_layered: enable creating scx appimage by @likewhatevs in #1330
- schedulers: lifetime inference on scheduler Drop trait definition. by @devnexen in #1332
- scx_wd40: Introduce wd40 scheduler by @etsal in #1328
- scxtop: make q exit help if in help instead of quitting by @JakeHillion in #1334
- scxtop: track number of dropped events and render it by @JakeHillion in #1335
- aarch64 build fixes by @etsal in #1336
- scx_p2dq: Add perf boost to interactive tasks by @hodgesds in #1337
- scx_layered: Update enqueue path to use direct dispatch into foreign local DSQs by @htejun in #1338
- scx_p2dq: Update defaults by @hodgesds in #1339
- scxtop: trivial: fix match arm case by @JakeHillion in #1341
- scxtop: drop unnecessary Arc and RwLock on tui by @JakeHillion in #1342
- build: Add script for pgo/lto builds by @hodgesds in #1333
- scxtop: Add softirq events by @hodgesds in #1340
- scxtop: run clippy and implement fixes by @JakeHillion in #1343
- scxtop: clippy fixes and made rust-tests action check required by @JakeHillion in #1345
- scx_rusty: further aarch64 fixes by @etsal in #1344
- scx_layered: Fix pick_idle_cpu() sometimes returning a disallowed CPU by @htejun in #1349
- scx_lavd: Avoid scx_bpf_kick_cpu(SCX_KICK_PREEMPT) for self-preemption by @multics69 in #1352
- scx_p2dq: Update load balancing by @hodgesds in #1353
- kernel: Sync with kernel at ad3b301aa05a ("sched_ext: Provides a sysfs 'events' to expose core event counters") by @htejun in #1354
- enum updates by @htejun in #1356
- scx_wd40: add cpumask library by @etsal in #1346
- scx_layered: Enable queued wakeup optimization by @htejun in #1357
- scx_loader: Add p2dq scheduler by @hodgesds in #1355
- scx_lavd: Fix the performance regression in recent changes. by @multics69 in #1358
- scx_rusty: turn off mempolicy setting for arm64 until we regen the headers by @etsal in #1359
- scx_p2dq: Refactor dispatch for better interactivity by @hodgesds in #1360
- scxtop: propose to give the ability to focus on one process. by @devnexen in #1361
- scx: Don't panic on missing enums in C schedulers by @arighi in #1362
- scx_p2dq: Fix verifier issue on big/little topology by @hodgesds in #1365
- scx_p2dq: Add autoslice tuning by @hodgesds in #1363
- scxtop: add experimental_long_tail_tracing by @JakeHillion in #1366
- scx_p2dq: Update pick2 migration logic by @hodgesds in #1364
- scx_bpfland: disable auto local dispatch for migration-disabled tasks by @arighi in #1368
- scxtop: Add IPI events by @hodgesds in #1367
- scxtop: __bpf_ringbuf_reserve() failure set to ENOMEM instead. by @devnexen in #1369
- scx_wd40: start simplifying by @etsal in #1372
- ci: use for-next for regular ci jobs to enable testing of new kernel β¦ by @likewhatevs in #1370
- scx_utils: remove test dependency on a sched_ext kernel by @JakeHillion in #1371
- scx_layered: add debug logging for gpu support and fix UsingGpu matcher by @likewhatevs in #1374
- scx_p2dq: Add initial wake sync support by @hodgesds in #1377
- scx_utils: make cpumask example no_run by @JakeHillion in #1381
- scxtop: Make tokio runtime options configurable by @hodgesds in #1376
- scxtop: Update README by @hodgesds in #1382
- scx_rusty: various optimisations/simplifications. by @devnexen in #1380
- scx_p2dq: Update docs by @hodgesds in #1383
- scx_layered: change sysinfo version to 0.30 by @likewhatevs in #1375
- scx_utils: use clsuter_id to detect if big.LITTLE CPUs by @arighi in #1386
- scx_bpfland: avoid creating redundant cache domains by @arighi in #1388
- scxtop: Cleanup unused counters by @hodgesds in #1390
- scx_layered: fix gpu matcher bugs by @likewhatevs in #1379
- scx_wd40: using nix instead of libc. by @devnexen in #1392
- scxtop: Add localization on number formatting by @hodgesds in #1393
- scx_bpfland: reduce task migrations by @arighi in #1389
- scxtop: Pass actions by reference by @hodgesds in #1391
- sched_ext: Add NUMA-aware idle CPU helpers by @arighi in #1395
- scx_utils: topology: Add package_id to the LLC and Core keys by @arighi in #1397
- scx_bpfland: Always re-enqueue tasks that are running on a busy SMT core by @arighi in #1398
- scxtop: Add config file by @hodgesds in #1394
- scx_bpfland: minor optimisations/modernisation. by @devnexen in #1331
- scx_utils: gpu topology adding nearest available devices. by @devnexen in #1396
- scx_p2dq: Refactor idle CPU selection by @hodgesds in #1402
- scx_bpfland: Skip idle CPU selection when system is fully busy by @arighi in #1401
- meson: Add p2dq to meson build by @hodgesds in #1404
- scx_bpfland; use scx_bpf_now() consistently by @arighi in #1403
- scx_bpfland: fix non-SMT CPU busy state detection by @arighi in #1405
- meson: Add p2dq to meson scripts and CI by @hodgesds in #1407
- scx_lavd: Use tracepoints for futex for reliable tracing by @multics69 in #1408
- scx_lavd: Fix BPF verifier errors in old kernels. by @multics69 in #1410
- scx_p2dq: Handle invalid load sum calculations by @hodgesds in #1409
- scxtop: Add keymap configuration by @hodgesds in #1406
- scxtop: add logging to file with panics by @JakeHillion in #1412
- scx_wd40: simplify BPF component by @etsal in #1399
- scxtop: clamp gauge ratio by @JakeHillion in #1413
- compat: provide consistent access to scx flags by @arighi in #1411
- scx_utils: add helper for updating BPF masks from userspace by @etsal in #1414
- scxtop: make event_data faster by @JakeHillion in #1415
- scxtop: Update build script to not recompile protos by @hodgesds in #1416
- build: Add release-fast build mode by @hodgesds in #1417
- scxtop: use smartstr with SSO for comms by @JakeHillion in #1421
- scxtop: implement TryFrom<bpf_event> for Action by @JakeHillion in #1422
- scxtop: Add separate subcommand for TUI and shell completion by @hodgesds in #1423
- scx_layered: revamp gpu support by @likewhatevs in #1425
- scxtop: add config merging interface by @JakeHillion in #1427
- scx_layered: fix gpu matcher by @likewhatevs in #1428
- scxtop: Set correct max on LLC sparkline view by @hodgesds in #1431
- scxtop: Add EventDispatchManager for handling events by @hodgesds in #1430
- scxtop: concurrently await tui events and actions by @JakeHillion in #1433
- scx_bpfland: NUMA-aware scheduling by @arighi in #1434
- scxtop: Fix max sparkline value across NUMA nodes by @hodgesds in #1432
- scx_layered: add stats tracking when antistall is ran by @likewhatevs in #1315
- layered: update documentation for recently added options by @JakeHillion in #1435
- scx_utils: using TopologyLevel::Internal nearest gpu discovery mode. by @devnexen in #1420
- scxtop: adding gpu_mem_total tracepoint. by @devnexen in #1436
- compat: Provide a compatible helper for scx_bpf_events() by @arighi in #1440
- scxtop: adding cpu hotplug (enter) event tracepoint. by @devnexen in #1439
- scxtop: Conditionally attach GPU probes by @hodgesds in #1438
- scx_wd40: optimisations/simplifications by @devnexen in #1442
- scx_flash: drop user lock priority boosting by @arighi in #1444
- scx_bpfland: fix cache domain detection by @arighi in #1447
- scxtop: Filter sched_switch events less aggressively by @hodgesds in #1445
- scxtop: Allow attaching hardware specific perf events by @hodgesds in #1449
- scxtop: Add docs for configuration by @hodgesds in #1443
- scxtop: stop traces with bpf timer by @JakeHillion in #1441
- scxtop: always send bpf event to terminate trace by @JakeHillion in #1452
- compat: add kprobe helper and update ksym helper by @likewhatevs in #1450
- scx_layered: expand kprobes used for gpu support by @likewhatevs in #1437
- scxtop: Add trace command by @hodgesds in #1451
- scx_utils, scx_lavd: Enable futex holder boosting conditionally. by @multics69 in #1454
- scx_bpfland: Fix is_wake_sync() by @arighi in #1455
- scx_utils: Fix kernels without CONFIG_DEBUG_FS by @anh0516 in #1456
- scxtop: making few kernel probes conditional. by @devnexen in #1448
- scx_p2dq: Bump version to 1.0.9 by @hodgesds in #1457
- scheds: Introduce scx_tickless by @arighi in #1446
- scx_layered: Improve kthread handling by @htejun in #1459
- scx_layered: Implement IsKthread match by @htejun in #1460
- version: 1.0.10 by @htejun in #1461
Full Changelog: v1.0.9...v1.0.10