task_util is an unsigned long value, compared with a CPU capacity which is
unsigned long as well. There's no need for an intermidiate implicit int
cast.
Fixes: b4c9c9f15649 ("sched/fair: Prefer prev cpu in asymmetric wakeup path")
Signed-off-by: Vincent Donnefort <[email protected]>
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 945d987246c5..8fde6e10e24b 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6346,7 +6346,7 @@ select_idle_capacity(struct task_struct *p, struct sched_domain *sd, int target)
return best_cpu;
}
-static inline bool asym_fits_capacity(int task_util, int cpu)
+static inline bool asym_fits_capacity(unsigned long task_util, int cpu)
{
if (static_branch_unlikely(&sched_asym_cpucapacity))
return fits_capacity(task_util, capacity_of(cpu));
--
2.25.1
On Thu, 18 Nov 2021 at 12:02, Vincent Donnefort
<[email protected]> wrote:
>
> task_util is an unsigned long value, compared with a CPU capacity which is
> unsigned long as well. There's no need for an intermidiate implicit int
s/intermidiate/intermediate/
> cast.
I can't remember how I end up using int instead of unsigned long
Side note: similarly task_fits_capacity uses long instead of unsigned
long for cpu's capacity parameter
>
> Fixes: b4c9c9f15649 ("sched/fair: Prefer prev cpu in asymmetric wakeup path")
> Signed-off-by: Vincent Donnefort <[email protected]>
Reviewed-by: Vincent Guittot <[email protected]>
>
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index 945d987246c5..8fde6e10e24b 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -6346,7 +6346,7 @@ select_idle_capacity(struct task_struct *p, struct sched_domain *sd, int target)
> return best_cpu;
> }
>
> -static inline bool asym_fits_capacity(int task_util, int cpu)
> +static inline bool asym_fits_capacity(unsigned long task_util, int cpu)
> {
> if (static_branch_unlikely(&sched_asym_cpucapacity))
> return fits_capacity(task_util, capacity_of(cpu));
> --
> 2.25.1
>