mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Daniel Thompson <daniel.thompson@linaro.org>
To: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: edubezval@gmail.com, kevin.wangtao@linaro.org,
	leo.yan@linaro.org, vincent.guittot@linaro.org,
	amit.kachhap@gmail.com, viresh.kumar@linaro.org,
	linux-kernel@vger.kernel.org, Zhang Rui <rui.zhang@intel.com>,
	"open list:THERMAL" <linux-pm@vger.kernel.org>
Subject: Re: [PATCH 4/8] thermal/drivers/Kconfig: Convert the CPU cooling device to a choice
Date: Wed, 31 Jan 2018 10:09:06 +0000	[thread overview]
Message-ID: <20180131100906.qdfas2zfoidmbh2b@oak.lan> (raw)
In-Reply-To: <301b5fe7-472e-6291-2880-4202de657de8@linaro.org>

On Fri, Jan 26, 2018 at 02:25:58PM +0100, Daniel Lezcano wrote:
> > Perhaps I should have distinguished more between runtime-meaning-boot-time
> > and runtime-meaning-full-system-operation. To be clear none of my
> > comments are about being able to enable/disable idle injection on a
> > fully running system. It is the impact on multi-platform binaries that
> > attracted my attention.
> > 
> > 
> >> I prefer to keep simple self-encapsulated feature code and make it
> >> evolve to something better instead of sending a blowing patch series
> >> taking into account all possible combinations. Choosing the strategy at
> >> compile time may be look restrictive but we can live with that without
> >> problem and iteratively do the change until the choice becomes the
> >> default strategy selection option.
> > 
> > You won't find me arguing against iterative improvement. However I
> > did observe that the idle injection code consists almost exclusively 
> > of new lines of code. Thus I don't understand why this new code 
> > interferes with cpufreq cooling to the point that the existing cooling
> > options must compiled out of the kernel before we can exploit it.
> > 
> > I can see the combo code does have tentacles in more places but even so
> > I have the same question. What prevents the existing cooling strategy
> > from being compiled at the same time.
> > 
> > You appear to be saying that there's not yet enough infrastructure to
> > decide which type of cooler to instantiate[1] so its OK to hack around
> > the decision by forcing it to be made it at compile time. Even if we
> > want to force a decision by some means, is compile time really the best
> > point to do that?
> 
> For the moment, yes. We are backward compatible, there is no change with
> the current feature.
> 
> I don't see really the point of being so afraid with this compilation
> option, it is not the first time we have compile time code which
> migrates to runtime code. The important thing is we don't break the
> existing.

I guess its because the code that implements the cooling devices doesn't
look like there is any conflict preventing them being enabled at the
same time except. There isn't even that much problem choosing between
cpufreq-only and cpuidle-only during instatiation (preferring cpufreq
for the benefit of existing platforms) although I can see that we cannot
choose between cpufreq-only and combo without extending the DT bindings.


> Having the runtime selection is the objective after improving the CPU
> cooling devices. But this is far from being trivial and will need a
> rework of the cooling device / framework (and the changes grouped in a
> separate patch series).

I guess if I'm in a minority of one then I can agree to disagree at
this point. I don't like build-time only features (for all the distro
centric reasons I've already mentioned) but I'm not that heavily
invested... and look forward to seeing runtime selection implemented.


Daniel.

  reply	other threads:[~2018-01-31 10:09 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-23 15:34 [PATCH 0/8] CPU cooling device new strategies Daniel Lezcano
2018-01-23 15:34 ` [PATCH 1/8] thermal/drivers/cpu_cooling: Fixup the header and copyright Daniel Lezcano
2018-01-31  5:17   ` Viresh Kumar
2018-01-31  7:03     ` Daniel Lezcano
2018-01-23 15:34 ` [PATCH 2/8] thermal/drivers/cpu_cooling: Add Software Package Data Exchange (SPDX) Daniel Lezcano
2018-01-31  5:18   ` Viresh Kumar
2018-02-08 14:05   ` Philippe Ombredanne
2018-02-08 14:07     ` Daniel Lezcano
2018-01-23 15:34 ` [PATCH 3/8] thermal/drivers/cpu_cooling: Remove pointless field Daniel Lezcano
2018-01-31  5:20   ` Viresh Kumar
2018-01-23 15:34 ` [PATCH 4/8] thermal/drivers/Kconfig: Convert the CPU cooling device to a choice Daniel Lezcano
2018-01-24 16:34   ` Daniel Thompson
2018-01-24 16:59     ` Daniel Lezcano
2018-01-25 10:57       ` Daniel Thompson
2018-01-25 13:36         ` Daniel Lezcano
2018-01-26 12:16           ` Daniel Thompson
2018-01-26 13:25             ` Daniel Lezcano
2018-01-31 10:09               ` Daniel Thompson [this message]
2018-02-07  9:04   ` Viresh Kumar
2018-02-07 10:15     ` Daniel Lezcano
2018-02-07 10:20       ` Viresh Kumar
2018-01-23 15:34 ` [PATCH 5/8] thermal/drivers/cpu_cooling: Introduce the cpu idle cooling driver Daniel Lezcano
2018-01-31  9:01   ` Vincent Guittot
2018-01-31  9:33     ` Daniel Lezcano
2018-01-31  9:46       ` Vincent Guittot
2018-01-31  9:50         ` Daniel Lezcano
2018-01-31  9:56           ` Vincent Guittot
2018-01-31 15:27             ` Daniel Lezcano
2018-02-01  7:57               ` Vincent Guittot
2018-02-01  8:25                 ` Daniel Lezcano
2018-02-05 13:54   ` Daniel Thompson
2018-02-06 11:34     ` Daniel Lezcano
2018-02-07  9:12   ` Viresh Kumar
2018-02-07 10:34     ` Daniel Lezcano
2018-02-07 10:41       ` Viresh Kumar
2018-02-09  9:41       ` Viresh Kumar
2018-02-16 17:39         ` Daniel Lezcano
2018-01-23 15:34 ` [PATCH 6/8] thermal/drivers/cpu_cooling: Add idle cooling device documentation Daniel Lezcano
2018-01-23 15:34 ` [PATCH 7/8] cpuidle/drivers/cpuidle-arm: Register the cooling device Daniel Lezcano
2018-01-23 15:34 ` [PATCH 8/8] thermal/drivers/cpu_cooling: Add the combo cpu " Daniel Lezcano
2018-02-02 10:42   ` Viresh Kumar
2018-02-02 14:30     ` Daniel Lezcano
2018-02-05  4:17       ` Viresh Kumar
2018-02-05 10:32         ` Daniel Lezcano
2018-02-06  4:28           ` Viresh Kumar
2018-02-06 10:48             ` Daniel Lezcano
2018-02-07  7:26               ` Viresh Kumar
2018-02-07 10:05                 ` Daniel Lezcano
2018-02-09  9:44       ` Viresh Kumar
2018-02-16  9:11         ` Daniel Lezcano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180131100906.qdfas2zfoidmbh2b@oak.lan \
    --to=daniel.thompson@linaro.org \
    --cc=amit.kachhap@gmail.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=edubezval@gmail.com \
    --cc=kevin.wangtao@linaro.org \
    --cc=leo.yan@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rui.zhang@intel.com \
    --cc=vincent.guittot@linaro.org \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®