Re: [PATCH -next] sched: make sched_set_stop_task() static

From: Peter Zijlstra
Date: Mon May 31 2021 - 03:34:49 EST


On Sat, May 29, 2021 at 10:29:56AM +0800, Bixuan Cui wrote:
> make W=1 generates the following warning for kernel/sched/core.c:
> warning: no previous prototype for ‘sched_set_stop_task’ [-Wmissing-prototypes]
>
> Signed-off-by: Bixuan Cui <cuibixuan@xxxxxxxxxx>
> ---
> kernel/sched/core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> index adea0b1e8036..1c1e9612018b 100644
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -3209,7 +3209,7 @@ int select_task_rq(struct task_struct *p, int cpu, int wake_flags)
> return cpu;
> }
>
> -void sched_set_stop_task(int cpu, struct task_struct *stop)
> +static void sched_set_stop_task(int cpu, struct task_struct *stop)
> {
> static struct lock_class_key stop_pi_lock;
> struct sched_param param = { .sched_priority = MAX_RT_PRIO - 1 };

Clearly you tested this well...

$ git grep sched_set_stop_task
kernel/sched/core.c:void sched_set_stop_task(int cpu, struct task_struct *stop)
kernel/stop_machine.c:extern void sched_set_stop_task(int cpu, struct task_struct *stop);
kernel/stop_machine.c: sched_set_stop_task(cpu, per_cpu(cpu_stopper.thread, cpu));

Please be more careful.