[{"id":1762489,"web_url":"http://patchwork.ozlabs.org/comment/1762489/","msgid":"<CAKfTPtBXkAyAc1aqqqEn6Yt14_Y7LFp3oySY-=G3ZTuG-DR_nA@mail.gmail.com>","list_archive_url":null,"date":"2017-09-04T07:49:11","subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","submitter":{"id":22608,"url":"http://patchwork.ozlabs.org/api/people/22608/","name":"Vincent Guittot","email":"vincent.guittot@linaro.org"},"content":"Hi Dietmar,\n\nRemoving cpu effificiency table looks good to me. Nevertheless, i have\nsome comments below for this patch.\n\nOn 30 August 2017 at 16:41, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:\n> Remove the 'cpu_efficiency/clock-frequency dt property' based solution\n> to set cpu capacity which was only working for Cortex-A15/A7 arm\n> big.LITTLE systems.\n>\n> I.e. the 'capacity-dmips-mhz' based solution is now the only one. It is\n> shared between arm and arm64 and works for every big.LITTLE system no\n> matter which core types it consists of.\n>\n> Cc: Russell King <linux@arm.linux.org.uk>\n> Cc: Vincent Guittot <vincent.guittot@linaro.org>\n> Cc: Juri Lelli <juri.lelli@arm.com>\n> Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>\n> ---\n>  arch/arm/kernel/topology.c | 113 ++-------------------------------------------\n>  1 file changed, 3 insertions(+), 110 deletions(-)\n>\n> diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel/topology.c\n> index bf949a763dbe..04ccfdd94213 100644\n> --- a/arch/arm/kernel/topology.c\n> +++ b/arch/arm/kernel/topology.c\n> @@ -47,52 +47,10 @@\n>   */\n>\n>  #ifdef CONFIG_OF\n> -struct cpu_efficiency {\n> -       const char *compatible;\n> -       unsigned long efficiency;\n> -};\n> -\n> -/*\n> - * Table of relative efficiency of each processors\n> - * The efficiency value must fit in 20bit and the final\n> - * cpu_scale value must be in the range\n> - *   0 < cpu_scale < 3*SCHED_CAPACITY_SCALE/2\n> - * in order to return at most 1 when DIV_ROUND_CLOSEST\n> - * is used to compute the capacity of a CPU.\n> - * Processors that are not defined in the table,\n> - * use the default SCHED_CAPACITY_SCALE value for cpu_scale.\n> - */\n> -static const struct cpu_efficiency table_efficiency[] = {\n> -       {\"arm,cortex-a15\", 3891},\n> -       {\"arm,cortex-a7\",  2048},\n> -       {NULL, },\n> -};\n> -\n> -static unsigned long *__cpu_capacity;\n> -#define cpu_capacity(cpu)      __cpu_capacity[cpu]\n> -\n> -static unsigned long middle_capacity = 1;\n> -static bool cap_from_dt = true;\n> -\n> -/*\n> - * Iterate all CPUs' descriptor in DT and compute the efficiency\n> - * (as per table_efficiency). Also calculate a middle efficiency\n> - * as close as possible to  (max{eff_i} - min{eff_i}) / 2\n> - * This is later used to scale the cpu_capacity field such that an\n> - * 'average' CPU is of middle capacity. Also see the comments near\n> - * table_efficiency[] and update_cpu_capacity().\n> - */\n>  static void __init parse_dt_topology(void)\n>  {\n> -       const struct cpu_efficiency *cpu_eff;\n> -       struct device_node *cn = NULL;\n> -       unsigned long min_capacity = ULONG_MAX;\n> -       unsigned long max_capacity = 0;\n> -       unsigned long capacity = 0;\n> -       int cpu = 0;\n> -\n> -       __cpu_capacity = kcalloc(nr_cpu_ids, sizeof(*__cpu_capacity),\n> -                                GFP_NOWAIT);\n> +       struct device_node *cn;\n> +       int cpu;\n>\n>         cn = of_find_node_by_path(\"/cpus\");\n>         if (!cn) {\n> @@ -101,9 +59,6 @@ static void __init parse_dt_topology(void)\n>         }\n>\n>         for_each_possible_cpu(cpu) {\n> -               const u32 *rate;\n> -               int len;\n> -\n>                 /* too early to use cpu->of_node */\n>                 cn = of_get_cpu_node(cpu, NULL);\n>                 if (!cn) {\n> @@ -115,73 +70,13 @@ static void __init parse_dt_topology(void)\n>                         of_node_put(cn);\n>                         continue;\n\nAFAICT, this continue is now useless as it was there to skipe the cpu\ntable efficiency method\n\n>                 }\n> -\n> -               cap_from_dt = false;\n> -\n> -               for (cpu_eff = table_efficiency; cpu_eff->compatible; cpu_eff++)\n> -                       if (of_device_is_compatible(cn, cpu_eff->compatible))\n> -                               break;\n> -\n> -               if (cpu_eff->compatible == NULL)\n> -                       continue;\n> -\n> -               rate = of_get_property(cn, \"clock-frequency\", &len);\n> -               if (!rate || len != 4) {\n> -                       pr_err(\"%s missing clock-frequency property\\n\",\n> -                               cn->full_name);\n> -                       continue;\n> -               }\n> -\n> -               capacity = ((be32_to_cpup(rate)) >> 20) * cpu_eff->efficiency;\n> -\n> -               /* Save min capacity of the system */\n> -               if (capacity < min_capacity)\n> -                       min_capacity = capacity;\n> -\n> -               /* Save max capacity of the system */\n> -               if (capacity > max_capacity)\n> -                       max_capacity = capacity;\n> -\n> -               cpu_capacity(cpu) = capacity;\n>         }\n>\n> -       /* If min and max capacities are equals, we bypass the update of the\n> -        * cpu_scale because all CPUs have the same capacity. Otherwise, we\n> -        * compute a middle_capacity factor that will ensure that the capacity\n> -        * of an 'average' CPU of the system will be as close as possible to\n> -        * SCHED_CAPACITY_SCALE, which is the default value, but with the\n> -        * constraint explained near table_efficiency[].\n> -        */\n> -       if (4*max_capacity < (3*(max_capacity + min_capacity)))\n> -               middle_capacity = (min_capacity + max_capacity)\n> -                               >> (SCHED_CAPACITY_SHIFT+1);\n> -       else\n> -               middle_capacity = ((max_capacity / 3)\n> -                               >> (SCHED_CAPACITY_SHIFT-1)) + 1;\n> -\n> -       if (cap_from_dt)\n> -               topology_normalize_cpu_scale();\n\nWhy have you moved the call to topology_normalize_cpu_scale() from\nparse_dt_topology() to update_cpu_capacity() ?\n\nYou should keep it in parse_dt_topology() as itis part of the dt\nparsing sequence\n\n> -}\n> -\n> -/*\n> - * Look for a customed capacity of a CPU in the cpu_capacity table during the\n> - * boot. The update of all CPUs is in O(n^2) for heteregeneous system but the\n> - * function returns directly for SMP system.\n> - */\n> -static void update_cpu_capacity(unsigned int cpu)\n> -{\n> -       if (!cpu_capacity(cpu) || cap_from_dt)\n> -               return;\n> -\n> -       topology_set_cpu_scale(cpu, cpu_capacity(cpu) / middle_capacity);\n> -\n> -       pr_info(\"CPU%u: update cpu_capacity %lu\\n\",\n> -               cpu, topology_get_cpu_scale(NULL, cpu));\n> +       topology_normalize_cpu_scale();\n>  }\n\nYou can probably just removed update_cpu_capacity()\n\n>\n>  #else\n>  static inline void parse_dt_topology(void) {}\n> -static inline void update_cpu_capacity(unsigned int cpuid) {}\n>  #endif\n>\n>   /*\n> @@ -277,8 +172,6 @@ void store_cpu_topology(unsigned int cpuid)\n>\n>         update_siblings_masks(cpuid);\n>\n> -       update_cpu_capacity(cpuid);\n> -\n>         pr_info(\"CPU%u: thread %d, cpu %d, socket %d, mpidr %x\\n\",\n>                 cpuid, cpu_topology[cpuid].thread_id,\n>                 cpu_topology[cpuid].core_id,\n> --\n> 2.11.0\n>","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"Vy2j4Ih2\"; \n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"E8pw3WAR\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xm27j2bgjz9s82\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tMon,  4 Sep 2017 17:50:09 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dom90-0007bc-4N; Mon, 04 Sep 2017 07:50:06 +0000","from mail-io0-x22a.google.com ([2607:f8b0:4001:c06::22a])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dom8u-0006ze-Di for linux-arm-kernel@lists.infradead.org;\n\tMon, 04 Sep 2017 07:50:03 +0000","by mail-io0-x22a.google.com with SMTP id q64so8854155iod.5\n\tfor <linux-arm-kernel@lists.infradead.org>;\n\tMon, 04 Sep 2017 00:49:33 -0700 (PDT)","by 10.107.180.84 with HTTP; Mon, 4 Sep 2017 00:49:11 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:\n\tReferences:In-Reply-To:MIME-Version:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=xtC7mBk/fUWrUFNum7BIb9R1fZEYMoyL79jOGqenf3U=;\n\tb=Vy2j4Ih29pF0yD\n\tep6MlQ4gax+MDAo09PQBO6340WF6CBoGqOE1xqbvivOl8keq0RPWYPBkQkoZ/E7ca4CBSNmnC/VO/\n\tvCrMBdhcjFoxQ3xW40Np1lJ47xnxNLMcfa1GDZ5P8DN6IkoxmkN1QSZRcCAsDj4BG3At05XjaOzGm\n\th/ePfWlS4kVVqcZfcfvlgo0RSY1Fzr/SenEdWm0oZqQpl6uPtJbRm0xq3xs6djR0ANL7JMQH/AR1u\n\tbpCF9xzFBCPynbx04rXYfoNTYKx4tVVh0VvGymEVUvyRZUZQnAqI5wsPGqSLnVMroKWhcpO9FMI2E\n\tko3NRLvH62DREceDs2GA==;","v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=fdX0yfFCavEMp/KPWKQBiapjJSOJQXKZNm+Kw8jWUjw=;\n\tb=E8pw3WARngorBiQ4qcijrUlXEugRPcNnThe3eG1BcwTxSHc5StKxOkEAjhMCnKSOdk\n\thtVvGAESV91rdyLiV1RK6L9iHNBUFGqq5nphM2Q3q10xyDVgSt44uay1mmS/TZbnj2wZ\n\tFYXuw4RuT+Ztb6eqy8zPgPItxO0YCIA7HESGs="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=fdX0yfFCavEMp/KPWKQBiapjJSOJQXKZNm+Kw8jWUjw=;\n\tb=VbTpYqAL0jBYeEqLCZrYQ1SYpTHho8ugA7l3Z+t9FQyklcZTtDJtKebsW0iEAQJA0i\n\tqPWgrRbKc6BTj0ZmcsmdB9bGP8RxFUQt7S3TloDWBRtf5VaNw20kC/W4Q6S33PMu9qQL\n\tkpEmCqxflt0muqarywAOkyR2myxnL8v0UpfLmzgg5XHRnRaZERvxDNmO/QlTbCUmw+ek\n\t8JsBDP3ezeKemHRrd2M8pytg/z52ZAjSdGkN7xR8wu/tzU3VuW0qRLVkpoRuasY4MrO0\n\tITx0vM7/oYByVQz2L+9GHnrA0/i8a8bSigTHi+nW2pXyokqNA71De46JULKByB2eC5xe\n\tHg/g==","X-Gm-Message-State":"AHPjjUiOuOTd2Wgo1pKR4GXi+C4CLqTCctenB8G7JsyWAIBDzaRMY4DC\n\towyxyfFL2N+OTsn9vkMXt1gsS7g9eenG","X-Google-Smtp-Source":"ADKCNb58MvsL5l2vZXWksfe73SlPnVJcPNcf/4Q7+F9O8xDl3at7gxTnmvL9Skcrs7pdPrG3j1hb1tViZ2TjUgOUJpM=","X-Received":"by 10.107.159.141 with SMTP id\n\ti135mr9974304ioe.268.1504511372477; \n\tMon, 04 Sep 2017 00:49:32 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<20170830144120.9312-2-dietmar.eggemann@arm.com>","References":"<20170830144120.9312-1-dietmar.eggemann@arm.com>\n\t<20170830144120.9312-2-dietmar.eggemann@arm.com>","From":"Vincent Guittot <vincent.guittot@linaro.org>","Date":"Mon, 4 Sep 2017 09:49:11 +0200","Message-ID":"<CAKfTPtBXkAyAc1aqqqEn6Yt14_Y7LFp3oySY-=G3ZTuG-DR_nA@mail.gmail.com>","Subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","To":"Dietmar Eggemann <dietmar.eggemann@arm.com>","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170904_005000_922813_08C5F5EC ","X-CRM114-Status":"GOOD (  27.28  )","X-Spam-Score":"-2.7 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.7 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,\n\tlow\n\ttrust [2607:f8b0:4001:c06:0:0:0:22a listed in] [list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Mark Rutland <mark.rutland@arm.com>,\n\t\"devicetree@vger.kernel.org\" <devicetree@vger.kernel.org>,\n\tlinux-samsung-soc <linux-samsung-soc@vger.kernel.org>,\n\tJuri Lelli <juri.lelli@arm.com>,\n\tlinux-kernel <linux-kernel@vger.kernel.org>, \n\tKrzysztof Kozlowski <krzk@kernel.org>,\n\tRussell King <linux@armlinux.org.uk>, \n\tlinux-renesas-soc@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, \n\tKukjin Kim <kgene@kernel.org>, LAK <linux-arm-kernel@lists.infradead.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1764044,"web_url":"http://patchwork.ozlabs.org/comment/1764044/","msgid":"<303d3f7b-5d64-e13a-c4f9-dd575958cafa@arm.com>","list_archive_url":null,"date":"2017-09-06T11:43:31","subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","submitter":{"id":64545,"url":"http://patchwork.ozlabs.org/api/people/64545/","name":"Dietmar Eggemann","email":"dietmar.eggemann@arm.com"},"content":"Hi Vincent,\n\nOn 04/09/17 08:49, Vincent Guittot wrote:\n> Hi Dietmar,\n> \n> Removing cpu effificiency table looks good to me. Nevertheless, i have\n> some comments below for this patch.\n\nThanks for the review!\n\n> On 30 August 2017 at 16:41, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:\n>> Remove the 'cpu_efficiency/clock-frequency dt property' based solution\n>> to set cpu capacity which was only working for Cortex-A15/A7 arm\n>> big.LITTLE systems.\n>>\n>> I.e. the 'capacity-dmips-mhz' based solution is now the only one. It is\n>> shared between arm and arm64 and works for every big.LITTLE system no\n>> matter which core types it consists of.\n>>\n>> Cc: Russell King <linux@arm.linux.org.uk>\n>> Cc: Vincent Guittot <vincent.guittot@linaro.org>\n>> Cc: Juri Lelli <juri.lelli@arm.com>\n>> Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>\n>> ---\n>>  arch/arm/kernel/topology.c | 113 ++-------------------------------------------\n>>  1 file changed, 3 insertions(+), 110 deletions(-)\n\n[...]\n\n>> @@ -115,73 +70,13 @@ static void __init parse_dt_topology(void)\n>>                         of_node_put(cn);\n>>                         continue;\n> \n> AFAICT, this continue is now useless as it was there to skipe the cpu\n> table efficiency method\n\nYou're right ... will remove it.\n\n[...]\n\n>> -       if (cap_from_dt)\n>> -               topology_normalize_cpu_scale();\n> \n> Why have you moved the call to topology_normalize_cpu_scale() from\n> parse_dt_topology() to update_cpu_capacity() ?\n\nDidn't move it ? It's still called from parse_dt_topology().\n\n> You should keep it in parse_dt_topology() as itis part of the dt\n> parsing sequence\n\nYes, this should be the case.\n\n[...]\n\n>> -/*\n>> - * Look for a customed capacity of a CPU in the cpu_capacity table during the\n>> - * boot. The update of all CPUs is in O(n^2) for heteregeneous system but the\n>> - * function returns directly for SMP system.\n>> - */\n>> -static void update_cpu_capacity(unsigned int cpu)\n>> -{\n>> -       if (!cpu_capacity(cpu) || cap_from_dt)\n>> -               return;\n>> -\n>> -       topology_set_cpu_scale(cpu, cpu_capacity(cpu) / middle_capacity);\n>> -\n>> -       pr_info(\"CPU%u: update cpu_capacity %lu\\n\",\n>> -               cpu, topology_get_cpu_scale(NULL, cpu));\n>> +       topology_normalize_cpu_scale();\n>>  }\n> \n> You can probably just removed update_cpu_capacity()\n\nI did remove update_cpu_capacity(). Maybe the patch layout is confusing?\n\n[...]","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"hsXQNiO+\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xnMDf3Y64z9s9Y\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tWed,  6 Sep 2017 21:44:02 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dpYkR-0004So-2u; Wed, 06 Sep 2017 11:43:59 +0000","from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]\n\thelo=foss.arm.com)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dpYkN-0004Q1-Gi for linux-arm-kernel@lists.infradead.org;\n\tWed, 06 Sep 2017 11:43:57 +0000","from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])\n\tby usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3653480D;\n\tWed,  6 Sep 2017 04:43:34 -0700 (PDT)","from [10.1.210.41] (e107985-lin.cambridge.arm.com [10.1.210.41])\n\tby usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id\n\t057163F540; Wed,  6 Sep 2017 04:43:31 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:\n\tMessage-ID:From:References:To:Subject:Reply-To:Content-ID:Content-Description\n\t:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=fJgozweVYHpy+J2I4Em5yhEx58Ohdhl/UMgnbKLB4cI=;\n\tb=hsXQNiO+oh1AWc\n\tsn6HxUh3U79bVNwAOfpufprVXUt+zCZ0vFKX4pe70yQ8ys4j20Gc9hPmO+dYj8iMMhvOzwFkbtpTh\n\txGhYYyXlASAkgGbnZGWmTML3wiOEgWWRVg6SfDE1G00R4ZfBDsM1D3pd21HFf9S4XVjZH9mFvxjTq\n\tW1qhY4Hu39h6Tpaopc3NSSpfd/T/J3lvtYx+pznpwXUxdgXQ+T0UIV8xrUiXWjXU2rLj/Lorjhfhb\n\tXDx58MhWC/THyL4hT52nUJycZquOb2tVHxXvjlw2+b+3gDqTUtoY4j1cfe6qjMhU7+zK8eonrFJaj\n\t3fm4MIA0D1dWNFJUUy2A==;","Subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","To":"Vincent Guittot <vincent.guittot@linaro.org>","References":"<20170830144120.9312-1-dietmar.eggemann@arm.com>\n\t<20170830144120.9312-2-dietmar.eggemann@arm.com>\n\t<CAKfTPtBXkAyAc1aqqqEn6Yt14_Y7LFp3oySY-=G3ZTuG-DR_nA@mail.gmail.com>","From":"Dietmar Eggemann <dietmar.eggemann@arm.com>","Message-ID":"<303d3f7b-5d64-e13a-c4f9-dd575958cafa@arm.com>","Date":"Wed, 6 Sep 2017 12:43:31 +0100","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<CAKfTPtBXkAyAc1aqqqEn6Yt14_Y7LFp3oySY-=G3ZTuG-DR_nA@mail.gmail.com>","Content-Language":"en-GB","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170906_044355_566169_7CF73956 ","X-CRM114-Status":"GOOD (  15.44  )","X-Spam-Score":"-6.9 (------)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-6.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-5.0 RCVD_IN_DNSWL_HI RBL: Sender listed at http://www.dnswl.org/,\n\thigh trust [217.140.101.70 listed in list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Mark Rutland <mark.rutland@arm.com>,\n\t\"devicetree@vger.kernel.org\" <devicetree@vger.kernel.org>,\n\tlinux-samsung-soc <linux-samsung-soc@vger.kernel.org>,\n\tJuri Lelli <juri.lelli@arm.com>,\n\tlinux-kernel <linux-kernel@vger.kernel.org>, \n\tKrzysztof Kozlowski <krzk@kernel.org>,\n\tRussell King <linux@armlinux.org.uk>, \n\tlinux-renesas-soc@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, \n\tKukjin Kim <kgene@kernel.org>, LAK <linux-arm-kernel@lists.infradead.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1764070,"web_url":"http://patchwork.ozlabs.org/comment/1764070/","msgid":"<CAKfTPtAvhujS1wpP1JE8OqCfsKXcrFxLQ0207WFg3ZhZjoHnBA@mail.gmail.com>","list_archive_url":null,"date":"2017-09-06T12:40:12","subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","submitter":{"id":22608,"url":"http://patchwork.ozlabs.org/api/people/22608/","name":"Vincent Guittot","email":"vincent.guittot@linaro.org"},"content":"On 6 September 2017 at 13:43, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:\n> Hi Vincent,\n>\n> On 04/09/17 08:49, Vincent Guittot wrote:\n>> Hi Dietmar,\n>>\n>> Removing cpu effificiency table looks good to me. Nevertheless, i have\n>> some comments below for this patch.\n>\n> Thanks for the review!\n>\n>> On 30 August 2017 at 16:41, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:\n>>> Remove the 'cpu_efficiency/clock-frequency dt property' based solution\n>>> to set cpu capacity which was only working for Cortex-A15/A7 arm\n>>> big.LITTLE systems.\n>>>\n>>> I.e. the 'capacity-dmips-mhz' based solution is now the only one. It is\n>>> shared between arm and arm64 and works for every big.LITTLE system no\n>>> matter which core types it consists of.\n>>>\n>>> Cc: Russell King <linux@arm.linux.org.uk>\n>>> Cc: Vincent Guittot <vincent.guittot@linaro.org>\n>>> Cc: Juri Lelli <juri.lelli@arm.com>\n>>> Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>\n>>> ---\n>>>  arch/arm/kernel/topology.c | 113 ++-------------------------------------------\n>>>  1 file changed, 3 insertions(+), 110 deletions(-)\n>\n> [...]\n>\n>>> @@ -115,73 +70,13 @@ static void __init parse_dt_topology(void)\n>>>                         of_node_put(cn);\n>>>                         continue;\n>>\n>> AFAICT, this continue is now useless as it was there to skipe the cpu\n>> table efficiency method\n>\n> You're right ... will remove it.\n>\n> [...]\n>\n>>> -       if (cap_from_dt)\n>>> -               topology_normalize_cpu_scale();\n>>\n>> Why have you moved the call to topology_normalize_cpu_scale() from\n>> parse_dt_topology() to update_cpu_capacity() ?\n>\n> Didn't move it ? It's still called from parse_dt_topology().\n>\n>> You should keep it in parse_dt_topology() as itis part of the dt\n>> parsing sequence\n>\n> Yes, this should be the case.\n>\n> [...]\n>\n>>> -/*\n>>> - * Look for a customed capacity of a CPU in the cpu_capacity table during the\n>>> - * boot. The update of all CPUs is in O(n^2) for heteregeneous system but the\n>>> - * function returns directly for SMP system.\n>>> - */\n>>> -static void update_cpu_capacity(unsigned int cpu)\n>>> -{\n>>> -       if (!cpu_capacity(cpu) || cap_from_dt)\n>>> -               return;\n>>> -\n>>> -       topology_set_cpu_scale(cpu, cpu_capacity(cpu) / middle_capacity);\n>>> -\n>>> -       pr_info(\"CPU%u: update cpu_capacity %lu\\n\",\n>>> -               cpu, topology_get_cpu_scale(NULL, cpu));\n>>> +       topology_normalize_cpu_scale();\n>>>  }\n>>\n>> You can probably just removed update_cpu_capacity()\n>\n> I did remove update_cpu_capacity(). Maybe the patch layout is confusing?\n\nyes you're right I have been confused by the layout\n\n>\n> [...]","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"XzviX78c\"; \n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"brHXwy3c\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xnNVX0hS5z9t2r\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tWed,  6 Sep 2017 22:41:08 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dpZdg-0000ED-W4; Wed, 06 Sep 2017 12:41:05 +0000","from mail-it0-x22e.google.com ([2607:f8b0:4001:c0b::22e])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dpZdZ-0008Vi-Kx for linux-arm-kernel@lists.infradead.org;\n\tWed, 06 Sep 2017 12:41:03 +0000","by mail-it0-x22e.google.com with SMTP id p6so9796184itb.1\n\tfor <linux-arm-kernel@lists.infradead.org>;\n\tWed, 06 Sep 2017 05:40:34 -0700 (PDT)","by 10.107.180.84 with HTTP; Wed, 6 Sep 2017 05:40:12 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:\n\tReferences:In-Reply-To:MIME-Version:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=+YzfE//IUmr7kxqjeDdzYgqJpoxSTvmrAHF7clmF1ec=;\n\tb=XzviX78c+XiV4W\n\tYdYvl/XVaI3Egw7lkuN3gZRVoMA1QlskN6bo2JayGTGfq+CIKCltJsKTZnQncE3sokrWTN0ebuMXL\n\tfmddnrRXHxZze/pDty46Sawp+hwoBam5RnN3URf0VgA4D3xX7MqlbiM9lVlOEzxE2YpItGKw/HNQN\n\thAvmEfmHUfa3g8ysygsnhYZ2nmcC8qtopnxb6yXga6blRUZSPuEc/rwxomEC87/TCAN/dEL5wZxIs\n\tFtmvXKXbdkVRL6Ir0UJAJ0gVTRikaioNlcQtFoR2Uq+K96219j3dNF1PkpsFC26DRo9Vw364oJW4Q\n\tYcIGdDxlXNXHZVSgLO/g==;","v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=aeQSY0gJXm0PRvZz3dzvjQpl+q/tSFvw7NUGXgQHuuk=;\n\tb=brHXwy3c74qXDRGUQa2QKyhuLEWiiuQzooOJHWadlo1a1d6lK45xr0SgtaQXu7vAxl\n\tBPa6sxgYsMTHV2fPX77xwyLHn01LF7PzI91Q+2SEY3fevcYrrmCtZwApndtw3SdaLrJh\n\tubYhjwCDioYQJ2Akvt8PjcphzaN4UP/Mnv+2Y="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=aeQSY0gJXm0PRvZz3dzvjQpl+q/tSFvw7NUGXgQHuuk=;\n\tb=p9Aha5oWMxVudFmO0tJ/s/xOr6yIcoBQfvpS5oBzcc7QZMI/HxMMtqnnHBRFAN4b8a\n\tIhSDcNb0zOb1yAPNxsdAt5bAMFNkrU/nXRH57gnsP6PO7VLAehFkii5tqGYipwjx4Tuo\n\tx4a/h/ukZmXasaatWyrJ2/5uRdLBTK90O6DJPy/dkHmZKCb8IPm9RjJKdpYh79WBON04\n\toQhA0rWSjMKx5ykU07X2yQAUzKNZ3YP3xea93gOuXAICrfcGa7TuTuNthHAmRwJoRPVs\n\tBhRF5HZMv9fnPTh4MRCMAaOoBhlYAshm9RIyQYE9JOv2EOF9HQu1Y8mr9l31pYHkMNPo\n\tB6eQ==","X-Gm-Message-State":"AHPjjUjRwnMW/bp+SlG/xTF/tTsYl0BpM2zxzo/bVP8na7NOw04LDxoV\n\tv5NM0T3jkapfw5nG5Boj2K3tGZsm7Fk4","X-Google-Smtp-Source":"ADKCNb7nhseeLx4fIbtjbpEMC3B184Z9R7u1IDr0UXzb8aWmAIDJhyzd5/G017554sm5g+IBddgH+AhANksKV4y6VF0=","X-Received":"by 10.36.209.68 with SMTP id w65mr2798100itg.166.1504701633433; \n\tWed, 06 Sep 2017 05:40:33 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<303d3f7b-5d64-e13a-c4f9-dd575958cafa@arm.com>","References":"<20170830144120.9312-1-dietmar.eggemann@arm.com>\n\t<20170830144120.9312-2-dietmar.eggemann@arm.com>\n\t<CAKfTPtBXkAyAc1aqqqEn6Yt14_Y7LFp3oySY-=G3ZTuG-DR_nA@mail.gmail.com>\n\t<303d3f7b-5d64-e13a-c4f9-dd575958cafa@arm.com>","From":"Vincent Guittot <vincent.guittot@linaro.org>","Date":"Wed, 6 Sep 2017 14:40:12 +0200","Message-ID":"<CAKfTPtAvhujS1wpP1JE8OqCfsKXcrFxLQ0207WFg3ZhZjoHnBA@mail.gmail.com>","Subject":"Re: [PATCH 1/4] arm: topology: remove cpu_efficiency","To":"Dietmar Eggemann <dietmar.eggemann@arm.com>","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170906_054057_802132_0C0BE76C ","X-CRM114-Status":"GOOD (  17.96  )","X-Spam-Score":"-2.7 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.7 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,\n\tlow\n\ttrust [2607:f8b0:4001:c0b:0:0:0:22e listed in] [list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Mark Rutland <mark.rutland@arm.com>,\n\t\"devicetree@vger.kernel.org\" <devicetree@vger.kernel.org>,\n\tlinux-samsung-soc <linux-samsung-soc@vger.kernel.org>,\n\tJuri Lelli <juri.lelli@arm.com>,\n\tlinux-kernel <linux-kernel@vger.kernel.org>, \n\tKrzysztof Kozlowski <krzk@kernel.org>,\n\tRussell King <linux@armlinux.org.uk>, \n\tlinux-renesas-soc@vger.kernel.org, Rob Herring <robh+dt@kernel.org>, \n\tKukjin Kim <kgene@kernel.org>, LAK <linux-arm-kernel@lists.infradead.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}}]