[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <91190a53b9d78ffe08d4b001d021868ad7ba6d1c.camel@gmail.com>
Date: Wed, 26 Aug 2020 12:54:15 +0300
From: Artem Bityutskiy <dedekind1@...il.com>
To: "Rafael J. Wysocki" <rafael@...nel.org>
Cc: "Rafael J. Wysocki" <rjw@...ysocki.net>,
Linux PM <linux-pm@...r.kernel.org>,
Srinivas Pandruvada <srinivas.pandruvada@...ux.intel.com>,
LKML <linux-kernel@...r.kernel.org>,
Doug Smythies <dsmythies@...us.net>
Subject: Re: [PATCH v2 2/5] cpufreq: intel_pstate: Always return last EPP
value from sysfs
Thanks for answer Rafael, it looks like there are 2 different things
now.
1. What kernel returns when I _read_ e_p_p file - truth or "cached" ?
2. How kernel behaves when I _write_ to e_p_p file something it cannot
provide - error or success.
For #1, I think we need to keep it simple and always return true policy
value. Does not matter what someone wrote there. If some process wrote
"powersave", but kernel uses EPP 0 anyway, the other process probably
wants to know the truth and get "performance" when reading e_p_p.
On Tue, 2020-08-25 at 16:51 +0200, Rafael J. Wysocki wrote:
> An alternative is to fail writes to energy_performance_preference if
> the driver works in the active mode and the scaling algorithm for the
> scaling CPU is performance and *then* to make reads from it return the
> value in the register.
Yes, this is #2. This sounds like the _right_ way to do it.
Suppose my script wants to exercise the system with 4 different EPP
policies. It changes the policy and runs measurements, each run takes
few _days_.
Now, my script asks for "powersave". Kernel _knows_ it cannot provide
it (performance+active enabled). Why would it not return error ("can't
do") instead of success ("yes, Sir!")?
Note, I deliberately use simple words like "my script" instead of "a
user-space process" to make it easier to convey the idea.
Anyway, if kernel returns error, I can go and improve my script WRT
controlling the performance+active mode knobs.
Powered by blists - more mailing lists