Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp4086669imm; Mon, 14 May 2018 02:19:43 -0700 (PDT) X-Google-Smtp-Source: AB8JxZolIdGvM7jBbx98KyvGqukQ4ZUFZYrJbhgEfKxxbIk+ESSe+rtYyITgzCoiba7drtZQwYIK X-Received: by 2002:a63:b51a:: with SMTP id y26-v6mr7965461pge.215.1526289583130; Mon, 14 May 2018 02:19:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526289583; cv=none; d=google.com; s=arc-20160816; b=ZyQotolA3lx+lK4eybuBbs9iquy1mDHf49D//Pq0408STYuxtxPjCGL7pjcuSimRMP fraqSYgIHNiXdlFMUQnMUIgVXYr0s5pb6zuUAsqxY3bPyTmp8F7Zx9mqOGGuP1dbU3G6 CBGsgoJRSFGDklSmZCVewKo/eyT/hmKo3HLZ+N+QA9/wRL9RLQUK6utTKQ7zGElES3Ib yj08Yde9u2An8Wn2S+k19Rz9wuqHuMIMgP7nqXd+qjz4tExCfTfXCAjpsz8Vj1qEmmFS H93MwtYqUiJPfTz9AmtpRd5UFaZp1htIi0xDO05MBrFjqWgkgdUPcI6kSHUU25L0nrfh 5+Bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=aAa2e0XeAmw9yrQG3KqEboFpeSD5WWS5IBFdLuaiAv0=; b=NIMc3LTMS8ZsaQUA6sR1nN/HfVcj8iH25HdFzNWSsnj5Kbrk3ZU7/4s1aCFjXzJSO0 os4aIvm7cwNgbtrnDCQtONHqnlvvqBNk2rBm11z75ICaP3sUj1HmPaIA+3BXr0RuTMcr IJ6ptyAaEg/iaZaF2+Pq3skc0Qypv8e04GW5N2Y+4Nmy4v5YZW9HR+mIPoK98p0j38OK NzCexo9Z4jwCWkCOy53lIlKrJuvxB77xoHQh7tI1VI2rsqpn707pzNpQT4nZ3aM4jZoU rZCYU9ezKjIOo6UE4Oc0vV2h+p7uUTCp3Z2ptPG5S2Suvk7sY9ariyUJavK7Dolavrkp 0jqg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GhJnHKiH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e19-v6si5935021pgn.36.2018.05.14.02.19.28; Mon, 14 May 2018 02:19:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=GhJnHKiH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752226AbeENJTM (ORCPT + 99 others); Mon, 14 May 2018 05:19:12 -0400 Received: from mail-it0-f67.google.com ([209.85.214.67]:53577 "EHLO mail-it0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752069AbeENJTK (ORCPT ); Mon, 14 May 2018 05:19:10 -0400 Received: by mail-it0-f67.google.com with SMTP id n64-v6so9273053itb.3 for ; Mon, 14 May 2018 02:19:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=aAa2e0XeAmw9yrQG3KqEboFpeSD5WWS5IBFdLuaiAv0=; b=GhJnHKiH0l07is0mB8vaHe0ymdWNBy8B5LesIujV0OGEPn1KUFuqqM6xVTqp+lgBeF puAA1z7kEapmQXRCxLfVxt5z5Bg2M8jUCE5f0VJMPDHjm+wxa33CF4/MhomenwqVoTcO rGbmJGUM15bhVNRa/7Vq6aMbyXuyHxK8LsWQM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=aAa2e0XeAmw9yrQG3KqEboFpeSD5WWS5IBFdLuaiAv0=; b=fWsPU8pYA7in/EnnVMn9V58MP1RuQcBbQpgo6Q6vv1A3cpYnCz9xB7FIYA4fU1sBF2 MY8l9wFQBIy2AnLsXKwQTw2J/oknh3JQUgWC5PoG5ThY1mo7UrKh5GBROwyNrmqgMRwl k2xryFrdDosF44RoKN7nO5FYSfb75l4fPtyYrBR9IjRH9//uYbrzJUB6U+KnlrQxWv+1 af1PmsNVfCW3+WepX3Gr597idKtydIP06VY9eyEzIGvr/b+bRPpXZrQq6U07kNFOzSes 68nGJahJZdDZCXVQA8qmxCsNHuyej9FZwdyajfEoHMHFx8yacTEKExvpfl/gpMjiND04 J0Vg== X-Gm-Message-State: ALKqPwdWLWnBhgpb4J9c6l6n67nbozD+4lP983KtBdDAxF5TCpFqkkBh O2kVZ4FHUKEe/dPT6XRE/ojeLb/NzsvF3Rc8Xt4vqg== X-Received: by 2002:a24:bd82:: with SMTP id x124-v6mr8362358ite.17.1526289549470; Mon, 14 May 2018 02:19:09 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.4.204 with HTTP; Mon, 14 May 2018 02:18:49 -0700 (PDT) In-Reply-To: <20180511091242.GE30654@e110439-lin> References: <20180510150553.28122-1-patrick.bellasi@arm.com> <20180510150553.28122-2-patrick.bellasi@arm.com> <20180511054407.qxwyyqsgyzqsf6e4@vireshk-i7> <20180511091242.GE30654@e110439-lin> From: Vincent Guittot Date: Mon, 14 May 2018 11:18:49 +0200 Message-ID: Subject: Re: [PATCH 1/3] sched/cpufreq: always consider blocked FAIR utilization To: Patrick Bellasi Cc: Viresh Kumar , linux-kernel , "open list:THERMAL" , Ingo Molnar , Peter Zijlstra , "Rafael J . Wysocki" , Dietmar Eggemann , Morten Rasmussen , Juri Lelli , Joel Fernandes , Steve Muckle Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 11 May 2018 at 11:12, Patrick Bellasi wrote: >> >> Do we need a Fixes tag and Cc stable ? > > Mmm... no sure, I would say that's not a fix. > > As I say in the changelog above, 8f111bc357aa was doing the correct > thing but, since the recent Vincent's commit 31e77c93e432, this is an > update worth to have, since now we can trust the decay of blocked > utilization. > > Regarding stable, well... if Vincent patches are not going to be > considered for stable, then we should not consider this too, do we? commit 31e77c93e432 is not for stable so this patch should not go too > >> > >> > diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c >> > index d2c6083304b4..a74d05160e66 100644 >> > --- a/kernel/sched/cpufreq_schedutil.c >> > +++ b/kernel/sched/cpufreq_schedutil.c >> > @@ -183,22 +183,21 @@ static void sugov_get_util(struct sugov_cpu *sg_cpu) >> > static unsigned long sugov_aggregate_util(struct sugov_cpu *sg_cpu) >> > { >> > struct rq *rq = cpu_rq(sg_cpu->cpu); >> > - unsigned long util; >> > >> > - if (rq->rt.rt_nr_running) { >> > - util = sg_cpu->max; >> > - } else { >> > - util = sg_cpu->util_dl; >> > - if (rq->cfs.h_nr_running) >> > - util += sg_cpu->util_cfs; >> > - } >> > + if (rq->rt.rt_nr_running) >> > + return sg_cpu->max; >> > >> > /* >> > + * Utilization required by DEADLINE must always be granted while, for >> > + * FAIR, we use blocked utilization of IDLE CPUs as a mechanism to >> > + * gracefully reduce the frequency when no tasks show up for longer >> > + * periods of time. >> > + * >> > * Ideally we would like to set util_dl as min/guaranteed freq and >> > * util_cfs + util_dl as requested freq. However, cpufreq is not yet >> > * ready for such an interface. So, we only do the latter for now. >> > */ >> > - return min(util, sg_cpu->max); >> > + return min(sg_cpu->max, (sg_cpu->util_dl + sg_cpu->util_cfs)); >> > } >> > >> > static void sugov_set_iowait_boost(struct sugov_cpu *sg_cpu, u64 time, unsigned int flags) >> >> Acked-by: Viresh Kumar >> >> -- >> viresh > > -- > #include > > Patrick Bellasi