On Mon, Sep 03, 2018 at 04:28:01PM +0200, Juri Lelli wrote:
> diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
> index fb7ae691cb82..08128bdf3944 100644
> --- a/kernel/sched/topology.c
> +++ b/kernel/sched/topology.c
> @@ -1883,8 +1883,19 @@ void partition_sched_domains_locked(int ndoms_new, 
> cpumask_var_t doms_new[],
>       for (i = 0; i < ndoms_cur; i++) {
>               for (j = 0; j < n && !new_topology; j++) {
>                       if (cpumask_equal(doms_cur[i], doms_new[j])
> -                         && dattrs_equal(dattr_cur, i, dattr_new, j))
> +                         && dattrs_equal(dattr_cur, i, dattr_new, j)) {

While there, please also fix that wrongly placed operator.

> +                             struct root_domain *rd;
> +
> +                             /*
> +                              * This domain won't be destroyed and as such
> +                              * its dl_bw->total_bw needs to be cleared.  It
> +                              * will be recomputed in function
> +                              * update_tasks_root_domain().
> +                              */
> +                             rd = cpu_rq(cpumask_any(doms_cur[i]))->rd;
> +                             dl_clear_root_domain(rd);
>                               goto match1;
> +                     }
>               }
>               /* No match - a current sched domain not in new doms_new[] */
>               detach_destroy_domains(doms_cur[i]);
> -- 
> 2.17.1
> 

Reply via email to