Tejun Heo
5bc34be478
sched/core: Reorganize cgroup bandwidth control interface file writes
...
- Move input parameter validation from tg_set_cfs_bandwidth() to the new
outer function tg_set_bandwidth(). The outer function handles parameters
in usecs, validates them and calls tg_set_cfs_bandwidth() which converts
them into nsecs. This matches tg_bandwidth() on the read side.
- max/min_cfs_* consts are now used by tg_set_bandwidth(). Relocate, convert
into usecs and drop "cfs" from the names.
- Reimplement cpu_cfs_{period|quote|burst}_write_*() using tg_bandwidth()
and tg_set_bandwidth() and replace "cfs" in the names with "bw".
- Update cpu_max_write() to use tg_set_bandiwdth(). cpu_period_quota_parse()
is updated to drop nsec conversion accordingly. This aligns the behavior
with cfs_period_quota_print().
- Drop now unused tg_set_cfs_{period|quota|burst}().
- While at it, for consistency, rename default_cfs_period() to
default_bw_period_us() and make it return usecs.
This is to prepare for adding bandwidth control support to sched_ext.
tg_set_bandwidth() will be used as the muxing point. No functional changes
intended.
Signed-off-by: Tejun Heo <tj@kernel.org >
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://lore.kernel.org/r/20250614012346.2358261-5-tj@kernel.org
2025-06-18 13:59:57 +02:00
Tejun Heo
43e33f53e2
sched/core: Reorganize cgroup bandwidth control interface file reads
...
- Update tg_get_cfs_*() to return u64 values. These are now used as the low
level accessors to the fair's bandwidth configuration parameters.
Translation to usecs takes place in these functions.
- Add tg_bandwidth() which reads all three bandwidth parameters using
tg_get_cfs_*().
- Reimplement cgroup interface read functions using tg_bandwidth(). Drop cfs
from the function names.
This is to prepare for adding bandwidth control support to sched_ext.
tg_bandwidth() will be used as the muxing point similar to tg_weight(). No
functional changes.
Signed-off-by: Tejun Heo <tj@kernel.org >
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://lore.kernel.org/r/20250614012346.2358261-4-tj@kernel.org
2025-06-18 13:59:57 +02:00
Tejun Heo
de4c80c696
sched/core: Relocate tg_get_cfs_*() and cpu_cfs_*_read_*()
...
Collect the getters, relocate the trivial interface file wrappers, and put
all of them in period, quota, burst order to prepare for future changes.
Pure reordering. No functional changes.
Signed-off-by: Tejun Heo <tj@kernel.org >
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://lore.kernel.org/r/20250614012346.2358261-3-tj@kernel.org
2025-06-18 13:59:57 +02:00
Tejun Heo
d403a3689a
sched/fair: Move max_cfs_quota_period decl and default_cfs_period() def from fair.c to sched.h
...
max_cfs_quota_period is defined in core.c but has a declaration in fair.c.
Move the declaration to kernel/sched/sched.h. Also, move
default_cfs_period() from fair.c to sched.h. No functional changes.
Signed-off-by: Tejun Heo <tj@kernel.org >
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://lore.kernel.org/r/20250614012346.2358261-2-tj@kernel.org
2025-06-18 13:59:56 +02:00
Ingo Molnar
dabe1be4e8
sched/smp: Use the SMP version of double_rq_clock_clear_update()
...
Simplify the scheduler by making CONFIG_SMP=y code in
double_rq_clock_clear_update() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-44-mingo@kernel.org
2025-06-13 08:47:23 +02:00
Ingo Molnar
fc75ac3c91
sched/smp: Use the SMP version of add_nr_running()
...
Simplify the scheduler by making CONFIG_SMP=y code in
add_nr_running() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-43-mingo@kernel.org
2025-06-13 08:47:23 +02:00
Ingo Molnar
241c307b05
sched/smp: Use the SMP version of ENQUEUE_MIGRATED
...
Simplify the scheduler by making the CONFIG_SMP-only ENQUEUE_MIGRATED
flag unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-42-mingo@kernel.org
2025-06-13 08:47:23 +02:00
Ingo Molnar
0203244600
sched/smp: Use the SMP version of WF_ and SD_ flag sanity checks
...
Simplify the scheduler by making CONFIG_SMP=y asserts related
to WF_ and SD_ flags unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-41-mingo@kernel.org
2025-06-13 08:47:23 +02:00
Ingo Molnar
ea100b31ee
sched/smp: Use the SMP version of task_on_cpu()
...
Simplify the scheduler by making CONFIG_SMP=y code in task_on_cpu()
unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-40-mingo@kernel.org
2025-06-13 08:47:22 +02:00
Ingo Molnar
703b8e8545
sched/smp: Use the SMP version of rq_pin_lock()
...
Simplify the scheduler by making a CONFIG_SMP-only warning
in rq_pin_lock() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-39-mingo@kernel.org
2025-06-13 08:47:22 +02:00
Ingo Molnar
9fd5da7989
sched/smp: Use the SMP version of is_migration_disabled()
...
Simplify the scheduler by making the CONFIG_SMP-only code in
is_migration_disabled() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-38-mingo@kernel.org
2025-06-13 08:47:22 +02:00
Ingo Molnar
1724088119
sched/smp: Use the SMP version of cpu_of()
...
Simplify the scheduler by making CONFIG_SMP=y code in cpu_of()
unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-37-mingo@kernel.org
2025-06-13 08:47:22 +02:00
Ingo Molnar
caf5bde9c5
sched/smp: Use the SMP version of the stop-CPU scheduling class
...
Simplify the scheduler by making CONFIG_SMP=y code in the stop-CPU
scheduling class unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-36-mingo@kernel.org
2025-06-13 08:47:21 +02:00
Ingo Molnar
482c4dae75
sched/smp: Use the SMP version of the idle scheduling class
...
Simplify the scheduler by making CONFIG_SMP=y code in the
idle scheduling classunconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-35-mingo@kernel.org
2025-06-13 08:47:21 +02:00
Ingo Molnar
6c8d251621
sched/smp: Use the SMP version of sched_update_asym_prefer_cpu()
...
Simplify the scheduler by making CONFIG_SMP=y code in
sched_update_asym_prefer_cpu() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-34-mingo@kernel.org
2025-06-13 08:47:21 +02:00
Ingo Molnar
8a9246ddc1
sched/smp: Use the SMP version of the scheduler syscalls
...
Simplify the scheduler by making CONFIG_SMP=y code in
idle_cpu(), __sched_setscheduler() and sched_setaffinity()
unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-33-mingo@kernel.org
2025-06-13 08:47:21 +02:00
Ingo Molnar
9d9af2372f
sched/smp: Use the SMP version of schedstats
...
Simplify the scheduler by making CONFIG_SMP=y schedstats
debugging output unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-32-mingo@kernel.org
2025-06-13 08:47:21 +02:00
Ingo Molnar
02fb885ebd
sched/smp: Use the SMP version of scheduler debugging data
...
Simplify the scheduler by making CONFIG_SMP=y debug output
unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-31-mingo@kernel.org
2025-06-13 08:47:20 +02:00
Ingo Molnar
6324dce8f6
sched/smp: Use the SMP version of the deadline scheduling class
...
Simplify the scheduler by making CONFIG_SMP=y code
in prio_changed_dl() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-30-mingo@kernel.org
2025-06-13 08:47:20 +02:00
Ingo Molnar
15125a229a
sched/smp: Use the SMP version of the RT scheduling class
...
Simplify the scheduler by making CONFIG_SMP=y primitives and data
structures unconditional in the RT policies scheduler.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-29-mingo@kernel.org
2025-06-13 08:47:20 +02:00
Ingo Molnar
74063c1755
sched/smp: Use the SMP version of idle_thread_set_boot_cpu()
...
Simplify the scheduler by making the CONFIG_SMP=y version of
idle_thread_set_boot_cpu() unconditional.
Note that idle_thread_set_boot_cpu() is already conditional
on CONFIG_GENERIC_SMP_IDLE_THREAD, which most architectures
select unconditionally on both UP and SMP kernels.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-28-mingo@kernel.org
2025-06-13 08:47:20 +02:00
Ingo Molnar
1f25730e5a
sched/smp: Use the SMP version of sched_exec()
...
Simplify the scheduler making CONFIG_SMP=y sched_exec()
code unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-27-mingo@kernel.org
2025-06-13 08:47:20 +02:00
Ingo Molnar
588467616c
sched/smp: Use the SMP version of wake_up_new_task()
...
Simplify the scheduler by making CONFIG_SMP=y code in wake_up_new_task()
unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-26-mingo@kernel.org
2025-06-13 08:47:19 +02:00
Ingo Molnar
8039addbe5
sched/smp: Use the SMP version of __task_needs_rq_lock()
...
Simplify the scheduler by making CONFIG_SMP=y code in
__task_needs_rq_lock() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-25-mingo@kernel.org
2025-06-13 08:47:19 +02:00
Ingo Molnar
d0a0a055a5
sched/smp: Use the SMP version of try_to_wake_up()
...
Simplify the scheduler by making CONFIG_SMP=y logic within
try_to_wake_up() unconditional.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-24-mingo@kernel.org
2025-06-13 08:47:19 +02:00
Ingo Molnar
a1416303d1
sched/smp: Always define rq->hrtick_csd
...
Simplify the scheduler by making CONFIG_SMP=y data structure
of rq->hrtick_csd unconditional.
Adjust hrtick_start() accordingly, which was split due to the
::hrtick_csd asymmetry and use the SMP version there too.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-23-mingo@kernel.org
2025-06-13 08:47:19 +02:00
Ingo Molnar
cac5cefbad
sched/smp: Make SMP unconditional
...
Simplify the scheduler by making CONFIG_SMP=y primitives and data
structures unconditional.
Introduce transitory wrappers for functionality not yet converted to SMP.
Note that this patch is pretty large, because there's no clear separation
between various aspects of the SMP scheduler, it's basically a huge block
of #ifdef CONFIG_SMP. A fair amount of it has to be switched on for it to
boot and work on UP systems.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-21-mingo@kernel.org
2025-06-13 08:47:18 +02:00
Ingo Molnar
5202c25dd1
sched/smp: Always define sched_domains_mutex_lock()/unlock(), def_root_domain and sched_domains_mutex
...
Simplify the scheduler by making CONFIG_SMP=y primitives and data
structures unconditional.
Unconditionally build kernel/sched/topology.c and the main sched-domains
locking primitives.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-20-mingo@kernel.org
2025-06-13 08:47:18 +02:00
Ingo Molnar
f1c6b957f7
sched: Clean up and standardize #if/#else/#endif markers in sched/topology.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-19-mingo@kernel.org
2025-06-13 08:47:18 +02:00
Ingo Molnar
23d27e2cfb
sched: Clean up and standardize #if/#else/#endif markers in sched/syscalls.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-18-mingo@kernel.org
2025-06-13 08:47:18 +02:00
Ingo Molnar
91433cd6e4
sched: Clean up and standardize #if/#else/#endif markers in sched/stats.[ch]
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-17-mingo@kernel.org
2025-06-13 08:47:17 +02:00
Ingo Molnar
fdccd0c792
sched: Clean up and standardize #if/#else/#endif markers in sched/sched.h
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-16-mingo@kernel.org
2025-06-13 08:47:17 +02:00
Ingo Molnar
3eca109a78
sched: Clean up and standardize #if/#else/#endif markers in sched/rt.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-15-mingo@kernel.org
2025-06-13 08:47:17 +02:00
Ingo Molnar
fd3db705f7
sched: Clean up and standardize #if/#else/#endif markers in sched/psi.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-14-mingo@kernel.org
2025-06-13 08:47:17 +02:00
Ingo Molnar
311bb3f7b7
sched: Clean up and standardize #if/#else/#endif markers in sched/pelt.[ch]
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-13-mingo@kernel.org
2025-06-13 08:47:17 +02:00
Ingo Molnar
c215dff7f8
sched: Clean up and standardize #if/#else/#endif markers in sched/loadavg.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-12-mingo@kernel.org
2025-06-13 08:47:16 +02:00
Ingo Molnar
833840a94f
sched: Clean up and standardize #if/#else/#endif markers in sched/idle.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-11-mingo@kernel.org
2025-06-13 08:47:16 +02:00
Ingo Molnar
416d5f78e4
sched: Clean up and standardize #if/#else/#endif markers in sched/fair.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-10-mingo@kernel.org
2025-06-13 08:47:16 +02:00
Ingo Molnar
29dd6f8cd2
sched: Clean up and standardize #if/#else/#endif markers in sched/debug.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-9-mingo@kernel.org
2025-06-13 08:47:16 +02:00
Ingo Molnar
c503c3dc2d
sched: Clean up and standardize #if/#else/#endif markers in sched/deadline.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Fix whitespace noise and other inconsistencies.
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-8-mingo@kernel.org
2025-06-13 08:47:16 +02:00
Ingo Molnar
4aec8669ff
sched: Clean up and standardize #if/#else/#endif markers in sched/cputime.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-7-mingo@kernel.org
2025-06-13 08:47:15 +02:00
Ingo Molnar
79af17344c
sched: Clean up and standardize #if/#else/#endif markers in sched/cpupri.h
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-6-mingo@kernel.org
2025-06-13 08:47:15 +02:00
Ingo Molnar
8bb9b0c5ae
sched: Clean up and standardize #if/#else/#endif markers in sched/cpufreq_schedutil.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-5-mingo@kernel.org
2025-06-13 08:47:15 +02:00
Ingo Molnar
b7ebb75856
sched: Clean up and standardize #if/#else/#endif markers in sched/core.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
- Apply this simplification:
-#if defined(CONFIG_FOO)
+#ifdef CONFIG_FOO
- Fix whitespace noise.
- Use vertical alignment to better visualize nested #ifdef blocks,
where appropriate:
#ifdef CONFIG_FOO
# ifdef CONFIG_BAR
...
# endif
#endif
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-4-mingo@kernel.org
2025-06-13 08:47:15 +02:00
Ingo Molnar
bbb1b274e8
sched: Clean up and standardize #if/#else/#endif markers in sched/clock.c
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-3-mingo@kernel.org
2025-06-13 08:47:14 +02:00
Ingo Molnar
69ab14ee52
sched: Clean up and standardize #if/#else/#endif markers in sched/autogroup.[ch]
...
- Use the standard #ifdef marker format for larger blocks,
where appropriate:
#if CONFIG_FOO
...
#else /* !CONFIG_FOO: */
...
#endif /* !CONFIG_FOO */
Signed-off-by: Ingo Molnar <mingo@kernel.org >
Acked-by: Peter Zijlstra <peterz@infradead.org >
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com >
Cc: Juri Lelli <juri.lelli@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mel Gorman <mgorman@suse.de >
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de >
Cc: Shrikanth Hegde <sshegde@linux.ibm.com >
Cc: Steven Rostedt <rostedt@goodmis.org >
Cc: Valentin Schneider <vschneid@redhat.com >
Cc: Vincent Guittot <vincent.guittot@linaro.org >
Link: https://lore.kernel.org/r/20250528080924.2273858-2-mingo@kernel.org
2025-06-13 08:47:14 +02:00
wang wei
b01f2d9597
sched/eevdf: Correct the comment in place_entity
...
Correct "l" to "vl_i".
Signed-off-by: wang wei <a929244872@163.com >
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Link: https://lkml.kernel.org/r/20250605152931.22804-1-a929244872@163.com
2025-06-11 11:20:53 +02:00
Peter Zijlstra
3d7e10188a
sched: Make clangd usable
...
Due to the weird Makefile setup of sched the various files do not
compile as stand alone units. The new generation of editors are trying
to do just this -- mostly to offer fancy things like completions but
also better syntax highlighting and code navigation.
Specifically, I've been playing around with neovim and clangd.
Setting up clangd on the kernel source is a giant pain in the arse
(this really should be improved), but once you do manage, you run into
dumb stuff like the above.
Fix up the scheduler files to at least pretend to work.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org >
Acked-by: Ingo Molnar <mingo@kernel.org >
Tested-by: Juri Lelli <juri.lelli@redhat.com >
Link: https://lkml.kernel.org/r/20250523164348.GN39944@noisy.programming.kicks-ass.net
2025-06-11 11:20:53 +02:00
Linus Torvalds
be54f8c558
Merge tag 'timers-cleanups-2025-06-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
...
Pull timer cleanup from Thomas Gleixner:
"The delayed from_timer() API cleanup:
The renaming to the timer_*() namespace was delayed due massive
conflicts against Linux-next. Now that everything is upstream finish
the conversion"
* tag 'timers-cleanups-2025-06-08' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
treewide, timers: Rename from_timer() to timer_container_of()
2025-06-08 11:33:00 -07:00
Linus Torvalds
538c429a4b
Merge tag 'trace-v6.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace
...
Pull more tracing fixes from Steven Rostedt:
- Fix regression of waiting a long time on updating trace event filters
When the faultable trace points were added, it needed task trace RCU
synchronization.
This was added to the tracepoint_synchronize_unregister() function.
The filter logic always called this function whenever it updated the
trace event filters before freeing the old filters. This increased
the time of "trace-cmd record" from taking 13 seconds to running over
2 minutes to complete.
Move the freeing of the filters to call_rcu*() logic, which brings
the time back down to 13 seconds.
- Fix ring_buffer_subbuf_order_set() error path lock protection
The error path of the ring_buffer_subbuf_order_set() released the
mutex too early and allowed subsequent accesses to setting the
subbuffer size to corrupt the data and cause a bug.
By moving the mutex locking to the end of the error path, it prevents
the reentrant access to the critical data and also allows the
function to convert the taking of the mutex over to the guard()
logic.
- Remove unused power management clock events
The clock events were added in 2010 for power management. In 2011 arm
used them. In 2013 the code they were used in was removed. These
events have been wasting memory since then.
- Fix sparse warnings
There was a few places that sparse warned about trace_events_filter.c
where file->filter was referenced directly, but it is annotated with
an __rcu tag. Use the helper functions and fix them up to use
rcu_dereference() properly.
* tag 'trace-v6.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
tracing: Add rcu annotation around file->filter accesses
tracing: PM: Remove unused clock events
ring-buffer: Fix buffer locking in ring_buffer_subbuf_order_set()
tracing: Fix regression of filter waiting a long time on RCU synchronization
2025-06-08 08:19:01 -07:00