Received: by 10.213.65.68 with SMTP id h4csp195808imn; Mon, 26 Mar 2018 19:04:48 -0700 (PDT) X-Google-Smtp-Source: AG47ELtNz4zoTUtWVmM/R5D2FYDRqTe9O2Mc2H5vTc8dEBWdNsmIbpHoQjsucLDLguSqc6k2CVag X-Received: by 10.99.117.86 with SMTP id f22mr29427929pgn.180.1522116288253; Mon, 26 Mar 2018 19:04:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522116288; cv=none; d=google.com; s=arc-20160816; b=fZ+TcXX8R9DTaS2/SNaDN14GKtVfN601gO7IXOfbGyPSCYMHgz+KRIKonT8PU/3pHJ wzIaVtUZ1Dgm+iCjbSurfRhlcs/0cwJwqDDMEV2dNaVzrH2WAkEl9/A3tVxlBsPkjqab lxby7AaX+adywq543QxQMJX0lQqzn45xR9NvTKkO/EXPtSXUaCuZkxMjIai+XBOyJXDe 6CegsOxU3eTgCKje7431xmkaLZNEi5XUPfMhnzHVGCxcGwrkSWhDareF1/14bzDXlals 56caCdUvizSmrX84nHaI8jVpIOI+qqGNoCiuREJLkchTf3CROqRSWMTbsf0DOhTf3/JI iL9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=pNFQDsC/CFqdRESM7AdT11ueH7UbSdq4v2kbA8q4CDU=; b=QBhWxHwdvY0cK451CLagYcdkMq3K1rNNmuqAJSFbdw2MwUAupUpjqyhFv8o1eoSkc7 I3k08hFl78AcA+Bvs+EELJ29TyArhhZfDe0xq2wC6QboV+arBgChP48dALIBNW8svruq Ny3fup5gag82OS/B+AAGZrAF5eoRlcFLvT8fYr5XyGwaLJpjB0AzNweS603jWan4KKUc 3IuLwT4dUkPwoZHhkTNjXNqoZPJ23snGgQzw/9aqvHQfx1k5FkHlG2b1nJtuNJvxYBc4 UFvYW4QCa8wLSrcPmb4DeWhBcKezwad11D3H+MPpayIc6kfhoxSxwhNi17lDrDzzfquj Q0fQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=D23wT4E5; 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 c22-v6si139790plz.279.2018.03.26.19.04.33; Mon, 26 Mar 2018 19:04:48 -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=D23wT4E5; 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 S1752186AbeC0CDo (ORCPT + 99 others); Mon, 26 Mar 2018 22:03:44 -0400 Received: from mail-wm0-f47.google.com ([74.125.82.47]:53424 "EHLO mail-wm0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751824AbeC0CDm (ORCPT ); Mon, 26 Mar 2018 22:03:42 -0400 Received: by mail-wm0-f47.google.com with SMTP id p9so6233644wmc.3 for ; Mon, 26 Mar 2018 19:03:42 -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=pNFQDsC/CFqdRESM7AdT11ueH7UbSdq4v2kbA8q4CDU=; b=D23wT4E5Ux0hJL43bnaWbtv9BAQM32/yUVpDcKY/HWOTqTzVG3EA0Hx5YWnOBX10Zq FR4ETXiNhNAD46cu1YC0WZCnTGV4Uf2v6r+nq8xzAbL5DIoP27ATG6yyODne6yRgYQcx 9AcwwJXKeEI8+Yx+++dbLlRTVEifCKcIlPYPY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=pNFQDsC/CFqdRESM7AdT11ueH7UbSdq4v2kbA8q4CDU=; b=Ps1Qq6VXCGjYUB3yeFc2zBcMigGOSxTOMMX7eHnffwWx6Eivy1jJ0Hm4iCEVm3CL2+ g9U1AypldpUcV0pHvfXyCuOTYhVcIreju+OAj/1tSqg3WfSYn6frPLBkNyrLTeiWUHyu t/vsnw3MqauR3IgnhSJnEgTR2ZcjwrCNp+V3oNC+aWs3ARD1YUAf09rtGCMdLURijSqq nXRzwIHB0krBgUPSawa2nA8Q5yZdJBohS9ItfjUFdpOqJ/eHyI5IWCKrX5sdl5Txaw4k +xOXO0qWChfwawb7UcpttxCfz7uVtT83/fp5b1FyrwbcUEcLoPmhsk62h6SmxEkcSFZS aV1g== X-Gm-Message-State: AElRT7GreAeKuCOZOrG2VKiXcPTUZwgqMiF19VB8Z6oFjjwofDfrbbVK O47A9JqzrV5rHNDuKs7BGcIzwQ== X-Received: by 10.28.12.195 with SMTP id 186mr8734765wmm.66.1522116221373; Mon, 26 Mar 2018 19:03:41 -0700 (PDT) Received: from leoy-ThinkPad-X240s (li622-172.members.linode.com. [212.71.249.172]) by smtp.gmail.com with ESMTPSA id f5sm66377wrh.15.2018.03.26.19.03.35 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 26 Mar 2018 19:03:40 -0700 (PDT) Date: Tue, 27 Mar 2018 10:03:31 +0800 From: Leo Yan To: Daniel Lezcano Cc: edubezval@gmail.com, kevin.wangtao@linaro.org, vincent.guittot@linaro.org, amit.kachhap@gmail.com, linux-kernel@vger.kernel.org, javi.merino@kernel.org, rui.zhang@intel.com, daniel.thompson@linaro.org, linux-pm@vger.kernel.org, Viresh Kumar Subject: Re: [PATCH V2 6/7] thermal/drivers/cpu_cooling: Introduce the cpu idle cooling driver Message-ID: <20180327020331.GA21693@leoy-ThinkPad-X240s> References: <1519226968-19821-1-git-send-email-daniel.lezcano@linaro.org> <1519226968-19821-7-git-send-email-daniel.lezcano@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1519226968-19821-7-git-send-email-daniel.lezcano@linaro.org> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Daniel, On Wed, Feb 21, 2018 at 04:29:27PM +0100, Daniel Lezcano wrote: > The cpu idle cooling driver performs synchronized idle injection across all > cpus belonging to the same cluster and offers a new method to cool down a SoC. > > Each cluster has its own idle cooling device, each core has its own idle > injection thread, each idle injection thread uses play_idle to enter idle. In > order to reach the deepest idle state, each cooling device has the idle > injection threads synchronized together. > > It has some similarity with the intel power clamp driver but it is actually > designed to work on the ARM architecture via the DT with a mathematical proof > with the power model which comes with the Documentation. > > The idle injection cycle is fixed while the running cycle is variable. That > allows to have control on the device reactivity for the user experience. At > the mitigation point the idle threads are unparked, they play idle the > specified amount of time and they schedule themselves. The last thread sets > the next idle injection deadline and when the timer expires it wakes up all > the threads which in turn play idle again. Meanwhile the running cycle is > changed by set_cur_state. When the mitigation ends, the threads are parked. > The algorithm is self adaptive, so there is no need to handle hotplugging. The idle injection threads are RT threads (FIFO) and I saw in play_idle() set/clear flag PF_IDLE for it. Will these idle injection threads utilization be accounted into RT utilization? If idle injection threads utilization is accounted as RT tasks utilization, will this impact CPUFreq governor 'schedutil' for OPP selection? [...] Thanks, Leo Yan