Received: by 2002:a05:6512:3d0e:0:0:0:0 with SMTP id d14csp641159lfv; Tue, 12 Apr 2022 00:42:53 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxnDiYLB56aQfOmXiuVcT2G+B9n9aC7HqONeNYH4H6ZEw1JnpvfXObkLdRzLXpeX1asmAnW X-Received: by 2002:a05:6a00:b51:b0:4fa:ece9:15e4 with SMTP id p17-20020a056a000b5100b004faece915e4mr36846331pfo.27.1649749372736; Tue, 12 Apr 2022 00:42:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649749372; cv=none; d=google.com; s=arc-20160816; b=qaD9a/wGh7TpleNGJUiOZTKS6H3Z9BJ/yMP7TVq9AYE/HTeCN+xlfcquhkjo16HCbC bmwOfF5EuQcnoUwlFVc7GWpCLmKLuxVx0v5oF+ForeT0EaEKSZezh0NIhfjKHVThi89t uD3couWnFaLoiJNRoybLS7kn5hTCfe5kwzzWx1xJYNWNzBuhKOUwuGVuF7mGJZLd8OG2 EsndaHvERMYPUM2mCOyJohIHatRPqo7MYrGN/39JLgBqzEmK5OlHjsWdOM3gR88oTf2G +pVtk8BmHFtuD3JWVeIaCpFkt3/EQyaT5Rbyg9+JUhI4o8+/tyzeAozwSVbNXXFOy5qZ 2asg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :dkim-signature; bh=CVRkw5t01Nmk7+snBxeMb6nwWxRUV60F+573FtVvM4g=; b=B7UveXWlDYiGCPOhaz2C42ejzlSYOxITkyaSpeA4+fQ0sGdGerS9B1Sm4DCdyRRV2p mjcIJ+PvFfi14PoG8EsMePzIrDBo8X/iQe98g68r8aG2rASt6+gW3iKkBSH/nLON/oI3 0f9rPXWDX+RhHJBLX4byQH4qk5FORysNoL8ph1qRhk68jMlL7+7dzOd8v0bWzKOe2WQH kVlddWT7lptPHHH0ZdDVDoyjW9jK9SvEAfhJzb04m14zoFQi1ThFNj7Gtt2t18G1SPoD AXBCfLdHQA4cOrEo4Q9jhbCSqeRNWwCGTkf9ZityYUyCPtgkeLtRVOtulVm5JDu+e5ok pT7A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=rW8dhQVT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d7-20020a170902854700b00155fc0b4904si9998418plo.234.2022.04.12.00.42.39; Tue, 12 Apr 2022 00:42:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=rW8dhQVT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S241435AbiDKDMj (ORCPT + 99 others); Sun, 10 Apr 2022 23:12:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47298 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244483AbiDKDMb (ORCPT ); Sun, 10 Apr 2022 23:12:31 -0400 Received: from mail-pg1-x52b.google.com (mail-pg1-x52b.google.com [IPv6:2607:f8b0:4864:20::52b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 91A6D2F397 for ; Sun, 10 Apr 2022 20:10:18 -0700 (PDT) Received: by mail-pg1-x52b.google.com with SMTP id 125so12977254pgc.11 for ; Sun, 10 Apr 2022 20:10:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=CVRkw5t01Nmk7+snBxeMb6nwWxRUV60F+573FtVvM4g=; b=rW8dhQVTF8QXZlGn920I+WmVa8D4tfousyRnOKkpTEyItN4m8iub7IdWlSPz3yhhX4 Av5Z01m90bIWD2j18yFGtIKqUPH7vPASznvVdTGPPj08sv7TFQibmQlIm6vU02f+iu6s e5zZCICOyquFz9LECrvqnLGIiQKNq1hnAnOCfs7T7Umqf9Ta4gdljRbKwVEoz7MwuKMr omgbvQC12sHZSjdSBuJS5865uamehhxSvk8z9x/pmH7YUuobSXms14+vRkoY8LVTdXxY VFj3Tb7r0rFOV8tmMePPd2fkmdo5ecWjKwg4/C/jWEwrHIDi2gp9ketaR6tk1zOa+mBF 0asA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=CVRkw5t01Nmk7+snBxeMb6nwWxRUV60F+573FtVvM4g=; b=DM4vnYZdeaoI4Fc2NeBu4U83FG2LoLOgni8rZ1w+0bfOpdzUcIByosEyKx6u8a0F8x xiv4/505c5VHEs+NxTkT5whpXiHvcr7LF9BhapukPbQQQfX5do2kppuUB04dIcq8Mqej PnmAWauoybeaWHqR/tDtnosXQvEQ6kahZ19L8l6s/YQFI7mPBqSeBKXxnsHWJbxyZINX 3nYGegW89g6gcR9FyzpPOKu2/q0IpRe8onzD99gKjqLPqxFZ2iQDpxEArSMoGQ/DM5xk XWA+WG/eSIpk1Ep1xVEDtp0yZkyMUrW/4ck2O7HNDJoMMz7kk4gGyJNYUlJydYCrGzyi YtNA== X-Gm-Message-State: AOAM533JuBMsfveUWSeIRuqZoEmiBK3UD1G7zVEwnkleYN0gefh0gVab APRNX+fppJ0+omqiweqtDYaKwg== X-Received: by 2002:a05:6a02:19c:b0:399:3007:c8fb with SMTP id bj28-20020a056a02019c00b003993007c8fbmr24674158pgb.571.1649646617709; Sun, 10 Apr 2022 20:10:17 -0700 (PDT) Received: from localhost ([223.184.83.228]) by smtp.gmail.com with ESMTPSA id g14-20020a65580e000000b0039ce0873289sm9445205pgr.84.2022.04.10.20.10.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 Apr 2022 20:10:17 -0700 (PDT) Date: Mon, 11 Apr 2022 08:40:15 +0530 From: Viresh Kumar To: Pierre Gondois Cc: linux-kernel@vger.kernel.org, Ionela.Voinescu@arm.com, Lukasz.Luba@arm.com, Morten.Rasmussen@arm.com, Dietmar.Eggemann@arm.com, maz@kernel.org, Catalin Marinas , Will Deacon , "Rafael J. Wysocki" , Mark Rutland , Ard Biesheuvel , Fuad Tabba , Valentin Schneider , Rob Herring , linux-arm-kernel@lists.infradead.org, linux-pm@vger.kernel.org Subject: Re: [PATCH v2 1/3] cpufreq: CPPC: Add cppc_cpufreq_search_cpu_data Message-ID: <20220411031015.skh3dw6vcbtn5f4u@vireshk-i7> References: <20220407081620.1662192-1-pierre.gondois@arm.com> <20220407081620.1662192-2-pierre.gondois@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220407081620.1662192-2-pierre.gondois@arm.com> User-Agent: NeoMutt/20180716-391-311a52 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07-04-22, 10:16, Pierre Gondois wrote: > From: Pierre Gondois > > cppc_cpufreq_get_cpu_data() allocates a new struct cppc_cpudata > for the input CPU at each call. > > To search the struct associated with a cpu without allocating > a new one, add cppc_cpufreq_search_cpu_data(). > Also add an early prototype. > > This will be used in a later patch, when generating artificial > performance states to register an artificial Energy Model in the > cppc_cpufreq driver and enable the Energy Aware Scheduler for ACPI > based systems. > > Signed-off-by: Pierre Gondois > --- > drivers/cpufreq/cppc_cpufreq.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c > index 82d370ae6a4a..ffcd9704add2 100644 > --- a/drivers/cpufreq/cppc_cpufreq.c > +++ b/drivers/cpufreq/cppc_cpufreq.c > @@ -41,6 +41,8 @@ > */ > static LIST_HEAD(cpu_data_list); > > +static struct cppc_cpudata *cppc_cpufreq_search_cpu_data(unsigned int cpu); > + > static bool boost_supported; > > struct cppc_workaround_oem_info { > @@ -479,6 +481,19 @@ static void cppc_cpufreq_put_cpu_data(struct cpufreq_policy *policy) > policy->driver_data = NULL; > } > > +static struct cppc_cpudata * > +cppc_cpufreq_search_cpu_data(unsigned int cpu) > +{ > + struct cppc_cpudata *iter, *tmp; > + > + list_for_each_entry_safe(iter, tmp, &cpu_data_list, node) { > + if (cpumask_test_cpu(cpu, iter->shared_cpu_map)) > + return iter; > + } > + > + return NULL; > +} Did you miss this in cppc_cpufreq_cpu_init() ? policy->driver_data = cpu_data; The data is saved inside the policy and it shouldn't be difficult to fetch it from there, instead of going through the list. -- viresh