Received: by 2002:a05:7412:419a:b0:f3:1519:9f41 with SMTP id i26csp4637853rdh; Wed, 29 Nov 2023 06:57:35 -0800 (PST) X-Google-Smtp-Source: AGHT+IER9IkVXPm26M+ASOndOyfkNtvQ3T6bhvzQ4aY++phiezLKLqHY2QjAGE+dLpTxSw93QRFg X-Received: by 2002:a17:90b:4a09:b0:27f:f61c:327d with SMTP id kk9-20020a17090b4a0900b0027ff61c327dmr18673625pjb.0.1701269854725; Wed, 29 Nov 2023 06:57:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701269854; cv=none; d=google.com; s=arc-20160816; b=s7X6JQefKtjgJLAWngqJWOilUgo+FlYTuflQHHwVRYl7hSosjkrs3GPoFs6eziuKze tE5iF6pD0YCuubmPkEjm2EDww6/Y4xgLLj1aD3HT+1qyxKnDQyaNMCqtBfjzpNdCQQjD S/l+nIEZC1FeJOIqnjvnzQ+fN9AaGqHOY1yqEIxshOOz1WR13jRJYnIIdE1VDIiZCyvm lm6MZeAq+l/XDgVqEI1jR5evt5UFbaCauBQLdZc8P9ElBRgyEpwP93HRXkoWKJ2LrDeS MS4iWbvfnzzpokmM8PvOs7Rk3DUVbTlV7ALagPcTEN8UYO6RPCNDwJHK7gORa2lxDdTO 6Sog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=lBDvY8xfUiRwWpZzeQ9H8DFnchFRqEtZ7Anhmfk/MaE=; fh=yRnQfMW0+rCZkoJaP0AA1VkTfUrNUeWfwHCrOjKmJvc=; b=kTgg4+JDMb/ojuV/map79+18dtfpLfEwLWcfb+Yo6GFYZ4yKDortdD6p6M7Vr71sKw giVpLWiXGE493lp/SyWuiqCtohTEw5IgmM+qcBTIS5hKkf/5iPprdWInR4DH76kMDjGC de80PgkTRJ44jR1+ZUlWCG0BbqhcX9Wtb/4ncWZ79o/hcrMAEpt0fsIkUgUBa4b9ClBg QXxpAtCjUTb1pFJgb/wccEVcHPjcmb99+MjmbFlfJ+MPaEj8QFPy3m67/ji8KYjNdOMz aD0gBU+V1y8dKdQkeHbTFf60sZ1nYAkmDIB1iTySUg5bWlQPKOFq/zEpDP4YvPQTf9U3 zY2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=zkxPXLmb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 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 fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id x12-20020a17090a970c00b002859d376d2csi1486856pjo.29.2023.11.29.06.57.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:57:34 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=zkxPXLmb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id CC4408045678; Wed, 29 Nov 2023 06:57:31 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234767AbjK2O5P (ORCPT + 99 others); Wed, 29 Nov 2023 09:57:15 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54128 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231488AbjK2O5O (ORCPT ); Wed, 29 Nov 2023 09:57:14 -0500 Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 866BFC6 for ; Wed, 29 Nov 2023 06:57:20 -0800 (PST) Received: by mail-pj1-x102e.google.com with SMTP id 98e67ed59e1d1-28580df78f7so4673218a91.2 for ; Wed, 29 Nov 2023 06:57:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1701269840; x=1701874640; darn=vger.kernel.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=lBDvY8xfUiRwWpZzeQ9H8DFnchFRqEtZ7Anhmfk/MaE=; b=zkxPXLmb23azapQ/eQ8IEBlsSmpL6+lP1nyoU3BCwoybWPAMQFXW56YBSk2mEdgFSC 5kogP68//JiZLHhPGjE2b3I8TzJReSgFChkxux/sAEjXN7NT+oUoTTXefc4woRyyffcZ FqwMIDms+mXepeiTp/pt4k/446zTH9HACbLlViKKk6kaUp1DlIxYpiImRMidgbDIE3oe 9VWHTOKzpCFrqs09Tt79HEGdDuwiayCh2SSoBEm2xtGx5cf+qUOcJA7i6j/aY1kQfSQe 7V3vzxYTmyes+aW2NnxY5sffdaQIjkSJcSWjjZTZ2aapeB2wRMhsmdfzlO/GrcaJajK2 OUJg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701269840; x=1701874640; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=lBDvY8xfUiRwWpZzeQ9H8DFnchFRqEtZ7Anhmfk/MaE=; b=id0nyv5opEFKVPJB9W9OhFMSQWMqUcOHOMC1FZD3CssoxDJrkUWMI5luFUfM8oRWM0 x1RpH9ZOAaRJiaE6NlAFjfI2ZOUF1X5npKAzPk1HXbzJ5SQBSg75afCBvB3I/J/1MVRk aBKXQ4ncGt2aXaw3PWcF5sXn3XmBORi9l4hHFfeNdPDKM9evqvvlg8mQOpeLf+/+eGDi INxLESA+jzPybwS2Hd2EcCa/SC79qtCXXDAzjgOhopN2JdrOlZ3Jl8DeMoG22GEgIwHs NL43VtP5dMpBsF8EgEpoIcxsnluGlfQfpQ0DCD+AS+401T/er52SEWKr+GJ2hNN32KGt QEYQ== X-Gm-Message-State: AOJu0YzDNs9izSxbubmKWzR+ODrwHVPlbd+knoIIvVFLwKXbGVZMdFtm jOQQm0wyA5ZcZNjG5ohD3URx+tYoyV7isa3IA7vMhQ== X-Received: by 2002:a17:90b:17c7:b0:285:9b51:64f with SMTP id me7-20020a17090b17c700b002859b51064fmr16079874pjb.36.1701269839853; Wed, 29 Nov 2023 06:57:19 -0800 (PST) MIME-Version: 1.0 References: <20231109101438.1139696-1-vincent.guittot@linaro.org> <20231109101438.1139696-2-vincent.guittot@linaro.org> In-Reply-To: From: Vincent Guittot Date: Wed, 29 Nov 2023 15:57:08 +0100 Message-ID: Subject: Re: [PATCH v6 1/7] topology: Add a new arch_scale_freq_reference To: Ionela Voinescu Cc: linux@armlinux.org.uk, catalin.marinas@arm.com, will@kernel.org, paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, sudeep.holla@arm.com, gregkh@linuxfoundation.org, rafael@kernel.org, mingo@redhat.com, peterz@infradead.org, juri.lelli@redhat.com, dietmar.eggemann@arm.com, rostedt@goodmis.org, bsegall@google.com, mgorman@suse.de, bristot@redhat.com, vschneid@redhat.com, viresh.kumar@linaro.org, lenb@kernel.org, robert.moore@intel.com, lukasz.luba@arm.com, pierre.gondois@arm.com, beata.michalska@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, linux-pm@vger.kernel.org, linux-acpi@vger.kernel.org, conor.dooley@microchip.com, suagrfillet@gmail.com, ajones@ventanamicro.com, lftan@kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:57:32 -0800 (PST) Hi Ionela, On Tue, 28 Nov 2023 at 17:00, Ionela Voinescu wrote: > > On Tuesday 28 Nov 2023 at 15:52:52 (+0000), Ionela Voinescu wrote: > > Hi Vincent, > > > > I have a small request on this patch, which is useful for [1]. > > I'll detail what is needed lower in the code. > > > > [1] https://lore.kernel.org/lkml/ZWYDr6JJJzBvsqf0@arm.com/ > > > > On Thursday 09 Nov 2023 at 11:14:32 (+0100), Vincent Guittot wrote: > > > @@ -279,13 +278,13 @@ void topology_normalize_cpu_scale(void) > > > > > > capacity_scale = 1; > > > for_each_possible_cpu(cpu) { > > > - capacity = raw_capacity[cpu] * per_cpu(freq_factor, cpu); > > > + capacity = raw_capacity[cpu] * per_cpu(capacity_freq_ref, cpu); > > > > The only affected code that I could find is here and below. > > > > The above line would have to change to: > > capacity = raw_capacity[cpu] * per_cpu(capacity_freq_ref, cpu) ?: 1; > > > > > capacity_scale = max(capacity, capacity_scale); > > > } > > > > > > pr_debug("cpu_capacity: capacity_scale=%llu\n", capacity_scale); > > > for_each_possible_cpu(cpu) { > > > - capacity = raw_capacity[cpu] * per_cpu(freq_factor, cpu); > > > + capacity = raw_capacity[cpu] * per_cpu(capacity_freq_ref, cpu); > > > > and here: > > capacity = raw_capacity[cpu] * per_cpu(capacity_freq_ref, cpu) ?: 1; > > > > I think it's nicer to start with capacity_freq_ref as 0 and compensate here > > for uninitialized capacity_freq_ref. > > > > Let me know if this is alright of if you'd prefer us to make this change > > in a separate patch. > > > > Thanks, > > Ionela. > > > > Correction - both will need to be: > capacity = raw_capacity[cpu] * (per_cpu(capacity_freq_ref, cpu) ?: 1); Yes, this one is better to keep the same behavior when cpufreq driver is never loaded I think this change should come as an additional patch either on top of this series or directly as part of [1] which is the main user of the change. I assume that's because you want arch_freq_get_on_cpu() returns 0 until everything has been initialized Vincent > > Thanks, > Ionela.