Linus Torvalds
bf76f23aa1
Merge tag 'sched-core-2025-07-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
...
Pull scheduler updates from Ingo Molnar:
"Core scheduler changes:
- Better tracking of maximum lag of tasks in presence of different
slices duration, for better handling of lag in the fair scheduler
(Vincent Guittot)
- Clean up and standardize #if/#else/#endif markers throughout the
entire scheduler code base (Ingo Molnar)
- Make SMP unconditional: build the SMP scheduler's data structures
and logic on UP kernel too, even though they are not used, to
simplify the scheduler and remove around 200 #ifdef/[#else]/#endif
blocks from the scheduler (Ingo Molnar)
- Reorganize cgroup bandwidth control interface handling for better
interfacing with sched_ext (Tejun Heo)
Balancing:
- Bump sd->max_newidle_lb_cost when newidle balance fails (Chris
Mason)
- Remove sched_domain_topology_level::flags to simplify the code
(Prateek Nayak)
- Simplify and clean up build_sched_topology() (Li Chen)
- Optimize build_sched_topology() on large machines (Li Chen)
Real-time scheduling:
- Add initial version of proxy execution: a mechanism for
mutex-owning tasks to inherit the scheduling context of higher
priority waiters.
Currently limited to a single runqueue and conditional on
CONFIG_EXPERT, and other limitations (John Stultz, Peter Zijlstra,
Valentin Schneider)
- Deadline scheduler (Juri Lelli):
- Fix dl_servers initialization order (Juri Lelli)
- Fix DL scheduler's root domain reinitialization logic (Juri
Lelli)
- Fix accounting bugs after global limits change (Juri Lelli)
- Fix scalability regression by implementing less agressive
dl_server handling (Peter Zijlstra)
PSI:
- Improve scalability by optimizing psi_group_change() cpu_clock()
usage (Peter Zijlstra)
Rust changes:
- Make Task, CondVar and PollCondVar methods inline to avoid
unnecessary function calls (Kunwu Chan, Panagiotis Foliadis)
- Add might_sleep() support for Rust code: Rust's "#[track_caller]"
mechanism is used so that Rust's might_sleep() doesn't need to be
defined as a macro (Fujita Tomonori)
- Introduce file_from_location() (Boqun Feng)
Debugging & instrumentation:
- Make clangd usable with scheduler source code files again (Peter
Zijlstra)
- tools: Add root_domains_dump.py which dumps root domains info (Juri
Lelli)
- tools: Add dl_bw_dump.py for printing bandwidth accounting info
(Juri Lelli)
Misc cleanups & fixes:
- Remove play_idle() (Feng Lee)
- Fix check_preemption_disabled() (Sebastian Andrzej Siewior)
- Do not call __put_task_struct() on RT if pi_blocked_on is set (Luis
Claudio R. Goncalves)
- Correct the comment in place_entity() (wang wei)"
* tag 'sched-core-2025-07-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (84 commits)
sched/idle: Remove play_idle()
sched: Do not call __put_task_struct() on rt if pi_blocked_on is set
sched: Start blocked_on chain processing in find_proxy_task()
sched: Fix proxy/current (push,pull)ability
sched: Add an initial sketch of the find_proxy_task() function
sched: Fix runtime accounting w/ split exec & sched contexts
sched: Move update_curr_task logic into update_curr_se
locking/mutex: Add p->blocked_on wrappers for correctness checks
locking/mutex: Rework task_struct::blocked_on
sched: Add CONFIG_SCHED_PROXY_EXEC & boot argument to enable/disable
sched/topology: Remove sched_domain_topology_level::flags
x86/smpboot: avoid SMT domain attach/destroy if SMT is not enabled
x86/smpboot: moves x86_topology to static initialize and truncate
x86/smpboot: remove redundant CONFIG_SCHED_SMT
smpboot: introduce SDTL_INIT() helper to tidy sched topology setup
tools/sched: Add dl_bw_dump.py for printing bandwidth accounting info
tools/sched: Add root_domains_dump.py which dumps root domains info
sched/deadline: Fix accounting after global limits change
sched/deadline: Reset extra_bw to max_bw when clearing root domains
sched/deadline: Initialize dl_servers after SMP
...
2025-07-29 17:42:52 -07:00
..
2025-03-26 09:32:10 -07:00
2025-05-07 11:25:02 +02:00
2025-05-21 14:33:28 +02:00
2025-04-03 21:35:32 +02:00
2025-03-13 13:17:41 -07:00
2025-04-25 15:53:19 +02:00
2025-04-28 09:30:41 +02:00
2025-07-29 11:42:31 -07:00
2025-05-08 19:43:51 -07:00
2025-07-07 09:43:52 +02:00
2025-05-11 17:54:10 -07:00
2025-07-13 15:36:25 +01:00
2025-07-18 12:34:56 -06:00
2025-07-10 23:46:05 +02:00
2025-03-26 20:58:24 -05:00
2025-07-28 22:52:02 -07:00
2025-05-05 11:44:37 -04:00
2025-05-14 16:59:17 +02:00
2025-07-21 15:39:07 +01:00
2025-06-18 14:20:32 -07:00
2025-05-09 11:35:43 -07:00
2025-04-30 12:55:59 +01:00
2025-03-25 14:22:07 -07:00
2025-06-15 21:19:08 +05:30
2025-05-21 10:09:47 +02:00
2025-07-29 09:52:01 -07:00
2025-03-29 18:11:12 -07:00
2025-06-30 09:07:26 +02:00
2025-06-05 14:03:07 -07:00
2025-06-27 00:29:07 +01:00
2025-07-29 17:42:52 -07:00
2025-07-29 11:13:27 -07:00
2025-06-05 08:07:24 -07:00
2025-06-29 22:10:52 +01:00
2025-07-28 09:56:09 -07:00
2025-07-05 07:52:33 +02:00
2025-07-24 16:55:11 -07:00
2025-05-21 11:34:06 +01:00
2025-05-25 00:53:48 -07:00
2025-05-07 21:56:55 +02:00
2025-06-09 11:24:43 +01:00
2025-05-08 13:35:22 +01:00
2025-07-21 18:18:51 +01:00
2025-03-15 15:08:53 +08:00
2025-06-17 18:42:44 -07:00
2025-06-16 17:00:06 -04:00
2025-04-15 15:20:37 +02:00
2025-04-17 20:10:08 -07:00
2025-04-10 10:39:03 +01:00
2025-05-20 08:44:33 +02:00
2025-04-21 10:27:59 +02:00
2025-06-13 06:19:34 -06:00
2025-03-17 22:06:45 -07:00
2025-04-29 15:58:38 -04:00
2025-04-29 15:58:38 -04:00
2025-04-29 15:58:38 -04:00
2025-04-29 15:58:38 -04:00
2025-06-30 15:50:32 -06:00
2025-07-28 16:14:18 -07:00
2025-06-30 15:50:32 -06:00
2025-07-01 10:24:19 -06:00
2025-07-28 16:43:54 -07:00
2025-07-24 16:55:11 -07:00
2025-03-16 22:06:27 -07:00
2025-05-27 14:09:12 -07:00
2025-05-28 15:52:42 -07:00
2025-05-19 08:17:08 -07:00
2025-04-17 10:50:55 -07:00
2025-07-16 14:48:18 +02:00
2025-04-29 15:58:38 -04:00
2025-06-13 06:20:17 -06:00
2025-03-08 14:37:39 +01:00
2025-03-07 22:03:09 -06:00
2025-07-22 19:10:17 -06:00
2025-05-19 10:30:02 -10:00
2025-05-27 20:59:53 -07:00
2025-07-11 16:01:07 +02:00
2025-03-16 22:06:30 -07:00
2025-06-05 22:02:23 -07:00
2025-03-17 22:07:06 -07:00
2025-05-31 19:12:53 -07:00
2025-03-16 22:05:52 -07:00
2025-03-16 22:05:52 -07:00
2025-05-08 09:42:06 -07:00
2025-04-29 15:58:38 -04:00
2025-04-25 11:44:35 +02:00
2025-05-21 13:41:03 +02:00
2025-03-11 12:51:21 +01:00
2025-05-21 13:39:45 +02:00
2025-07-16 13:56:23 +02:00
2025-04-01 09:12:05 +02:00
2025-06-16 17:01:22 +02:00
2025-05-14 11:56:17 +01:00
2025-03-10 18:00:49 +09:00
2025-07-29 17:42:52 -07:00
2025-05-07 21:17:56 +02:00
2025-06-26 16:06:40 +02:00
2025-06-03 07:39:23 -07:00
2025-05-12 23:50:33 -07:00
2025-05-21 10:48:21 -07:00
2025-05-21 10:48:21 -07:00
2025-03-16 22:30:47 -07:00
2025-03-10 09:29:29 -07:00
2025-05-13 20:37:16 -07:00
2025-06-30 09:31:57 -07:00
2025-06-30 09:31:57 -07:00
2025-06-30 09:31:57 -07:00
2025-06-30 09:31:57 -07:00
2025-07-07 12:24:50 +02:00
2025-05-05 18:20:45 +08:00
2025-05-12 23:50:29 -07:00
2025-06-17 13:47:44 +02:00
2025-06-11 13:39:52 -04:00
2025-04-11 18:58:10 -07:00
2025-07-09 13:30:29 +02:00
2025-07-14 20:22:59 +09:00
2025-04-21 10:27:59 +02:00
2025-05-04 11:35:05 +02:00
2025-07-29 12:15:39 -07:00
2025-05-28 15:52:42 -07:00
2025-03-11 15:24:09 +00:00
2025-05-05 13:29:44 -04:00
2025-05-06 08:36:53 +02:00
2025-05-27 20:09:06 -07:00
2025-06-26 15:18:04 -07:00
2025-05-20 05:34:27 +02:00
2025-05-23 13:24:53 -07:00
2025-07-24 16:55:11 -07:00
2025-04-17 10:56:11 +02:00
2025-05-13 14:34:18 +02:00
2025-06-30 19:52:55 +02:00
2025-05-22 15:32:00 +02:00
2025-06-11 11:20:52 +02:00
2025-05-25 18:12:14 +09:00
2025-06-23 12:17:33 +02:00
2025-05-06 15:46:54 +00:00
2025-06-23 12:45:13 +02:00
2025-05-19 22:46:34 +02:00
2025-04-10 10:39:14 +01:00
2025-04-22 18:16:09 +02:00
2025-04-08 10:28:07 +02:00
2025-07-04 16:14:39 +02:00
2025-06-10 13:16:19 +02:00
2025-03-30 12:43:03 -07:00
2025-05-15 20:24:40 +02:00
2025-05-21 14:34:38 +02:00
2025-06-18 11:20:19 +02:00
2025-04-21 10:27:59 +02:00
2025-06-23 12:17:33 +02:00
2025-07-08 10:25:19 +02:00
2025-07-28 15:50:15 -07:00
2025-05-21 14:35:34 +02:00
2025-07-10 12:33:13 -07:00
2025-07-16 14:28:21 +02:00
2025-06-19 12:29:17 +02:00
2025-05-29 10:34:26 -07:00
2025-03-24 09:34:10 -07:00
2025-06-06 18:05:18 -07:00
2025-07-11 16:02:00 +02:00
2025-04-15 18:10:57 +02:00
2025-05-22 14:55:37 -07:00
2025-07-24 16:24:49 +02:00
2025-07-01 10:24:11 -06:00
2025-05-21 14:21:34 +01:00
2025-05-13 15:59:03 +02:00
2025-04-10 10:50:57 +02:00
2025-05-30 08:40:25 -07:00
2025-05-12 06:06:42 -04:00
2025-05-12 06:06:42 -04:00
2025-04-05 10:30:17 +02:00
2025-04-09 21:00:42 +02:00
2025-05-12 23:50:34 -07:00
2025-06-05 22:02:24 -07:00
2025-05-11 17:54:07 -07:00
2025-03-21 17:12:04 -05:00
2025-06-03 08:39:20 -07:00
2025-05-22 11:07:05 +02:00
2025-05-19 22:23:57 +02:00
2025-05-20 22:49:39 +02:00
2025-04-01 18:03:46 -07:00
2025-07-07 10:42:15 +02:00
2025-03-21 22:10:06 +01:00
2025-03-19 19:17:58 +01:00
2025-04-29 15:54:54 -04:00
2025-05-27 08:25:42 +02:00
2025-07-26 14:28:35 -07:00
2025-07-03 11:09:32 +03:00
2025-07-03 11:09:35 +03:00
2025-07-03 11:09:43 +03:00
2025-06-27 21:43:40 +03:00
2025-04-15 14:13:36 +03:00
2025-04-24 14:31:03 +02:00
2025-03-17 12:17:01 -07:00
2025-07-28 16:30:12 -07:00
2025-05-20 15:04:13 +01:00
2025-05-01 09:43:48 -07:00
2025-07-14 10:51:33 +02:00
2025-05-30 10:44:20 -07:00
2025-03-25 10:18:31 -03:00
2025-03-21 22:10:04 -07:00
2025-05-07 17:25:48 -05:00
2025-03-10 13:13:04 -07:00
2025-06-30 19:52:55 +02:00
2025-05-27 08:00:46 -07:00
2025-07-03 15:49:24 +02:00
2025-07-24 10:57:26 +02:00
2025-05-20 10:31:12 -04:00
2025-04-30 09:06:23 +02:00
2025-03-10 11:54:45 +01:00
2025-03-28 21:10:53 +00:00
2025-05-11 17:54:06 -07:00
2025-05-12 23:50:40 -07:00
2025-05-31 19:12:53 -07:00
2025-06-11 11:57:14 -07:00
2025-05-22 14:55:38 -07:00
2025-06-25 15:55:03 -07:00
2025-07-21 21:40:39 -07:00
2025-03-08 12:13:25 +01:00
2025-03-14 14:20:53 -04:00
2025-05-28 06:29:17 -04:00
2025-04-10 10:39:10 +01:00
2025-05-14 09:25:09 +01:00
2025-04-10 10:39:13 +01:00
2025-07-16 09:31:43 +02:00
2025-03-25 09:20:27 +01:00
2025-03-16 22:30:49 -07:00
2025-05-11 17:54:14 -07:00
2025-05-14 13:16:24 +02:00
2025-05-27 19:40:34 -07:00
2025-04-23 09:04:56 -07:00
2025-04-11 17:32:35 -07:00
2025-07-17 06:01:16 -06:00
2025-03-28 12:37:13 -07:00
2025-07-04 16:14:39 +02:00
2025-03-08 16:23:22 +08:00
2025-03-26 20:58:25 -05:00
2025-05-26 16:23:39 -05:00
2025-05-11 17:48:29 -07:00
2025-07-24 09:20:39 +02:00
2025-05-27 17:35:25 -07:00
2025-03-11 15:24:09 +00:00
2025-07-24 16:55:11 -07:00
2025-05-31 22:46:08 -07:00
2025-05-11 17:48:07 -07:00
2025-05-21 09:55:15 -07:00
2025-03-17 22:06:40 -07:00
2025-05-13 10:23:24 +02:00
2025-04-01 09:29:18 -07:00
2025-03-16 23:24:14 -07:00
2025-04-07 07:36:33 -04:00
2025-06-24 16:48:02 +01:00
2025-05-22 14:55:37 -07:00
2025-07-11 16:02:00 +02:00
2025-07-22 15:50:20 +02:00
2025-05-20 22:49:38 -07:00
2025-05-31 15:44:16 -07:00
2025-05-31 22:46:13 -07:00
2025-06-02 16:00:26 -07:00
2025-06-06 12:45:35 -07:00
2025-06-11 11:20:51 +02:00
2025-06-29 19:03:29 -04:00
2025-05-16 17:53:48 -07:00
2025-07-03 15:49:24 +02:00
2025-05-27 12:16:41 -04:00
2025-05-26 08:02:43 -07:00
2025-05-22 15:32:00 +02:00
2025-05-28 15:24:36 -07:00
2025-03-17 13:54:50 +00:00
2025-05-23 13:57:12 +02:00
2025-05-27 08:25:43 +02:00
2025-05-23 13:57:13 +02:00
2025-07-28 11:22:56 -07:00
2025-05-19 16:06:42 -07:00
2025-03-19 19:17:58 +01:00
2025-05-28 17:17:13 -04:00
2025-05-28 17:17:13 -04:00
2025-04-02 17:06:31 -07:00
2025-04-13 16:39:42 -04:00
2025-05-28 17:17:14 -04:00
2025-05-13 11:40:04 -04:00
2025-05-22 14:55:36 -07:00
2025-03-20 16:53:53 -07:00
2025-03-20 16:53:54 -07:00
2025-07-17 13:38:07 +02:00
2025-05-21 14:28:27 +02:00
2025-03-25 09:20:27 +01:00
2025-05-05 16:17:40 -05:00
2025-03-29 11:23:16 -07:00
2025-05-11 17:54:13 -07:00
2025-06-01 08:41:11 -07:00
2025-03-17 00:05:36 -07:00
2025-03-17 22:06:57 -07:00
2025-04-01 15:14:42 -07:00
2025-05-09 13:43:07 +01:00
2025-05-12 23:50:49 -07:00
2025-05-31 15:44:16 -07:00
2025-05-31 22:46:13 -07:00
2025-07-16 14:48:18 +02:00
2025-04-01 22:25:56 +02:00
2025-05-10 16:11:49 +08:00
2025-06-16 11:50:34 -07:00
2025-03-28 10:07:23 -03:00
2025-05-30 12:21:57 -05:00
2025-05-28 16:47:56 -05:00
2025-05-28 16:15:40 -05:00
2025-05-06 08:36:53 +02:00
2025-06-04 11:26:17 -07:00
2025-05-21 16:46:37 +02:00
2025-05-12 23:50:31 -07:00
2025-04-07 09:37:16 +02:00
2025-05-25 00:53:48 -07:00
2025-06-05 14:37:53 +02:00
2025-05-11 17:26:06 -07:00
2025-05-22 14:55:37 -07:00
2025-05-20 18:17:43 -07:00
2025-05-27 17:35:25 -07:00
2025-04-22 18:21:53 -07:00
2025-06-19 14:28:24 +02:00
2025-06-19 14:28:24 +02:00
2025-03-10 08:53:40 +01:00
2025-03-11 18:41:27 +01:00
2025-03-12 21:28:48 +01:00
2025-07-29 11:42:31 -07:00
2025-05-02 11:03:18 +05:30
2025-07-22 18:01:15 +02:00
2025-04-25 16:02:29 +02:00
2025-07-22 18:07:11 +02:00
2025-03-12 20:41:14 +01:00
2025-04-14 16:30:29 -07:00
2025-03-10 09:11:04 -04:00
2025-06-27 20:13:12 +02:00
2025-07-07 15:19:46 +03:00
2025-07-01 12:29:29 +02:00
2025-06-13 08:47:18 +02:00
2025-06-10 22:08:05 -04:00
2025-07-10 09:39:18 +02:00
2025-07-01 12:31:37 +02:00
2025-07-09 13:40:21 +02:00
2025-06-25 07:27:27 -07:00
2025-05-11 17:48:19 -07:00
2025-04-15 20:20:58 -07:00
2025-07-07 08:39:36 +02:00
2025-06-23 12:17:33 +02:00
2025-05-08 16:13:27 -07:00
2025-05-08 16:13:27 -07:00
2025-04-01 09:12:17 +02:00
2025-05-03 12:02:04 +02:00
2025-03-24 19:41:37 -07:00
2025-03-16 22:06:18 -07:00
2025-03-16 23:24:14 -07:00
2025-03-16 22:06:19 -07:00
2025-07-25 13:44:33 +01:00
2025-07-14 22:27:46 -07:00
2025-05-11 17:54:09 -07:00
2025-05-16 12:10:20 +02:00
2025-06-16 21:06:12 +02:00
2025-05-05 15:16:50 +02:00
2025-05-08 20:29:07 +02:00
2025-03-16 23:24:15 -07:00
2025-05-09 15:19:10 -04:00
2025-05-11 17:54:09 -07:00
2025-05-12 23:50:45 -07:00
2025-05-06 11:11:45 -06:00
2025-03-17 11:52:25 +01:00
2025-04-07 11:13:39 -07:00
2025-04-25 15:53:59 +02:00
2025-03-24 17:27:39 -04:00
2025-06-11 22:42:35 -07:00
2025-07-29 17:42:52 -07:00
2025-04-14 10:21:27 +01:00
2025-04-07 11:02:07 +02:00
2025-07-28 18:20:32 -07:00
2025-05-11 17:54:08 -07:00
2025-03-28 13:37:11 +01:00
2025-03-28 13:37:11 +01:00
2025-03-20 08:00:51 -07:00
2025-06-17 13:42:34 +02:00
2025-06-19 13:24:16 +02:00
2025-04-07 09:36:49 +02:00
2025-05-13 11:12:48 +02:00
2025-05-21 15:40:17 -07:00
2025-04-01 09:29:18 -07:00
2025-05-23 08:49:16 +01:00
2025-07-29 13:00:20 -07:00
2025-04-10 18:34:05 -07:00
2025-05-11 17:54:12 -07:00
2025-07-24 17:58:00 -07:00
2025-05-07 14:25:30 -07:00
2025-06-18 14:30:53 -07:00
2025-05-02 18:25:08 -07:00
2025-07-17 12:10:56 -07:00
2025-04-07 15:07:56 +01:00
2025-07-17 16:39:49 -07:00
2025-06-26 20:39:34 +02:00
2025-03-16 17:40:24 -07:00
2025-05-12 23:50:35 -07:00
2025-03-16 22:05:58 -07:00
2025-07-02 17:05:17 +02:00
2025-04-15 18:46:10 +02:00
2025-05-15 11:30:08 -07:00
2025-03-25 20:52:04 +01:00
2025-04-17 12:21:45 +03:00
2025-05-13 16:38:03 +02:00
2025-06-04 11:27:11 +02:00
2025-07-01 15:38:25 +02:00
2025-07-18 13:45:33 +02:00
2025-07-03 14:44:15 +02:00
2025-06-08 09:07:37 +02:00
2025-06-03 07:39:23 -07:00
2025-04-10 16:20:06 +02:00
2025-07-28 18:18:16 -07:00
2025-03-28 13:37:11 +01:00
2025-03-28 13:37:11 +01:00
2025-05-14 11:19:32 -04:00
2025-05-08 19:17:33 -07:00
2025-05-02 12:52:16 -07:00
2025-03-20 08:00:51 -07:00
2025-06-24 15:32:56 +01:00
2025-03-20 08:00:50 -07:00
2025-04-04 15:44:16 +02:00
2025-05-11 17:54:06 -07:00
2025-05-07 11:21:35 +01:00
2025-05-02 10:54:37 -07:00
2025-06-02 16:00:26 -07:00
2025-04-30 21:53:35 +02:00
2025-05-11 17:48:18 -07:00
2025-07-21 17:40:02 +02:00
2025-03-16 22:30:50 -07:00
2025-05-31 19:12:53 -07:00
2025-05-08 09:42:06 -07:00
2025-03-25 10:18:31 -03:00
2025-05-28 03:19:03 -04:00
2025-05-26 19:04:21 +02:00
2025-04-18 10:05:49 -04:00
2025-07-09 21:07:56 -07:00
2025-05-28 14:55:35 -07:00
2025-04-01 09:29:18 -07:00
2025-06-24 16:45:35 +01:00
2025-03-26 18:08:55 -07:00
2025-05-27 20:49:06 -07:00
2025-04-01 09:29:18 -07:00
2025-05-11 17:48:19 -07:00
2025-05-11 17:48:06 -07:00
2025-05-11 17:48:06 -07:00
2025-03-13 13:25:58 -07:00
2025-03-13 13:25:58 -07:00
2025-03-13 13:25:58 -07:00
2025-03-17 22:06:50 -07:00