On 25/04/17 13:40, Vincent Guittot wrote:
> On 25 April 2017 at 13:05, Dietmar Eggemann wrote:
>> On 19/04/17 17:54, Vincent Guittot wrote:
>>> In the current implementation of load/util_avg, we assume that the ongoing
>>> time segment has fully elapsed, and
On 18/05/17 20:36, Jeffrey Hugo wrote:
[...]
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index d711093..a5d41b1 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -8220,7 +8220,24 @@ static int load_balance(int this_cpu, struct rq
> *this_rq,
> /* Al
On 13/07/17 13:40, Sudeep Holla wrote:
>
>
> On 11/07/17 16:21, Dietmar Eggemann wrote:
>> On 11/07/17 07:39, Viresh Kumar wrote:
>>> On 10-07-17, 14:46, Rafael J. Wysocki wrote:
[...]
>> Like I said in the other email, since for (future)
>> arm/arm64 fas
On 10/07/17 10:42, Viresh Kumar wrote:
> On 10-07-17, 11:30, Peter Zijlstra wrote:
>> On Sat, Jul 08, 2017 at 02:09:37PM +0200, Rafael J. Wysocki wrote:
>>> Anyway, if everyone agrees that doing it in the core is the way to go
>>> (Peter?),
>>> why don't you introduce a __weak function for setting
On 08/07/17 13:09, Rafael J. Wysocki wrote:
> On Friday, July 07, 2017 06:06:30 PM Dietmar Eggemann wrote:
>> On 07/07/17 17:18, Rafael J. Wysocki wrote:
>>> On Fri, Jul 7, 2017 at 6:01 PM, Dietmar Eggemann
>>> wrote:
>>>> On 06/07/17 11:40, Viresh Kumar w
On 06/07/17 11:42, Viresh Kumar wrote:
> On 06-07-17, 10:49, Dietmar Eggemann wrote:
>> Define arch_set_freq_scale to be the arch_topology "driver" function
>> topology_set_freq_scale() to let FIE work correctly.
>>
>> Cc: Russell King
>> Cc: Jur
On 06/07/17 11:57, Viresh Kumar wrote:
> Sure this patch looks pretty useful, but ...
>
> On 06-07-17, 10:49, Dietmar Eggemann wrote:
>> diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
>> index 63fb3f945d21..b4481cff14bf 100644
>> --- a/d
On 11/07/17 07:01, Viresh Kumar wrote:
> On 10-07-17, 13:02, Dietmar Eggemann wrote:
>> Yes, I will change this. The #define approach is not really necessary
>> here since we're not in the scheduler hot-path and inlining is not
>> really required here.
>
> It wou
On 11/07/17 15:59, Rafael J. Wysocki wrote:
> On Tuesday, July 11, 2017 04:06:01 PM Dietmar Eggemann wrote:
>> On 11/07/17 07:01, Viresh Kumar wrote:
>>> On 10-07-17, 13:02, Dietmar Eggemann wrote:
>>>> Yes, I will change this. The #define approach is not really neces
On 11/07/17 07:39, Viresh Kumar wrote:
> On 10-07-17, 14:46, Rafael J. Wysocki wrote:
>> This particular change is about a new feature, so making it in the core is OK
>> in two cases IMO: (a) when you actively want everyone to be affected by it
>> and
>
> IMO this change should be done for the wh
cpufreq_set_freq_scale() gets compiled out.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Signed-off-by: Dietmar Eggemann
---
drivers/cpufreq/cpufreq.c | 26 ++
1 file changed, 26 insertions(+)
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
index
: Vincent Guittot
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Tested-by: Juri Lelli
Reviewed-by: Juri Lelli
---
drivers/base/arch_topology.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
Define arch_set_freq_scale to be the arch_topology "driver" function
topology_set_freq_scale() to let FIE work correctly.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm/include/asm/topology.h | 5 +
arch/arm/kernel/topology.c | 1 -
2 files
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Tested-by: Juri Lelli
Reviewed-
293840 120
253.2 840 120
299.6 1060 140
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
drivers/base/arch_topology.c | 14 ++
include/linux/arch_topology.h | 15 +--
2 files changed, 15 insertions(+), 14 deletions(-)
d
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Tested-by
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by:
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Catalin Marinas
Acked-by: V
Define arch_set_freq_scale to be the arch_topology "driver" function
topology_set_freq_scale() to let FIE work correctly.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm64/include/asm/topology.h | 5 +
arch/arm64/kernel/topology.
https://marc.info/?l=linux-kernel&m=149625018223002&w=2
Dietmar Eggemann (10):
drivers base/arch_topology: free cpumask cpus_to_visit
cpufreq: provide data for frequency-invariant load-tracking support
drivers base/arch_topology: frequency-invariant load-tracking support
arm: wire
e task scheduler.
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
drivers/base/arch_topology.c | 20
include/linux/arch_topology.h | 7 +++
2 files changed, 27 insertions(+)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topo
On 06/07/17 12:15, Viresh Kumar wrote:
> On 06-07-17, 11:59, Juri Lelli wrote:
>> On 06/07/17 15:52, Viresh Kumar wrote:
[...]
>>
>> If that's the case I'm wondering however if we need explicit
>> synchronization though. Otherwise both threads can read the mask as
>> full, clear only their bits a
On 06/07/17 11:40, Viresh Kumar wrote:
> On 06-07-17, 10:49, Dietmar Eggemann wrote:
[...]
>> In case arch_set_freq_scale() is not defined (and because of the
>> pr_debug() drivers/cpufreq/cpufreq.c is not compiled with -DDEBUG)
>
> The line within () needs to be impro
On 06/07/17 11:45, Viresh Kumar wrote:
> On 06-07-17, 10:49, Dietmar Eggemann wrote:
[...]
>> diff --git a/include/linux/arch_topology.h b/include/linux/arch_topology.h
>> index 9af3c174c03a..168104d2d2cf 100644
>> --- a/include/linux/arch_topology.h
>> +++ b/in
On 07/07/17 17:18, Rafael J. Wysocki wrote:
> On Fri, Jul 7, 2017 at 6:01 PM, Dietmar Eggemann
> wrote:
>> On 06/07/17 11:40, Viresh Kumar wrote:
>>> On 06-07-17, 10:49, Dietmar Eggemann wrote:
[...]
>> So what about I call arch_set_freq_scale() in __cpufreq_not
f is a nop.
I wonder if it is fair to say that your fix helps multi-cluster
(especially with n > 2) systems without SMT and with your first patch
[1] for this specific, cpu affinity restricted test cases.
> Co-authored-by: Austin Christ
> Signed-off-by: Jeffrey Hugo
> Tested-by: Tyl
On 02/09/2018 11:05 PM, Rohit Jain wrote:
On 02/09/2018 07:46 AM, Dietmar Eggemann wrote:
On 02/09/2018 01:53 PM, Peter Zijlstra wrote:
On Mon, Jan 29, 2018 at 03:27:09PM -0800, Rohit Jain wrote:
[...]
@@ -6173,8 +6183,15 @@ static int select_idle_cpu(struct task_struct
*p, struct
On 02/09/2018 01:53 PM, Peter Zijlstra wrote:
On Mon, Jan 29, 2018 at 03:27:09PM -0800, Rohit Jain wrote:
[...]
@@ -6173,8 +6183,15 @@ static int select_idle_cpu(struct task_struct *p, struct
sched_domain *sd, int t
return -1;
if (!cpumask_test_cpu(cpu
On 02/22/2018 11:27 PM, Rafael J. Wysocki wrote:
> On Tue, Feb 20, 2018 at 12:10 PM, Dietmar Eggemann
> wrote:
[...]
>> Fixes: 343a8d17fa8d ("cpufreq: scpi: remove arm_big_little dependency")
>> Cc: Rafael J. Wysocki
>> Cc: Viresh Kumar
>> Cc: Sudeep H
Wysocki
Cc: Viresh Kumar
Cc: Sudeep Holla
Signed-off-by: Dietmar Eggemann
Acked-by: Sudeep Holla
---
drivers/cpufreq/scpi-cpufreq.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/cpufreq/scpi-cpufreq.c b/drivers/cpufreq/scpi-cpufreq.c
index c32a83
Wysocki
Cc: Viresh Kumar
Cc: Sudeep Holla
Signed-off-by: Dietmar Eggemann
Acked-by: Sudeep Holla
Acked-by: Viresh Kumar
---
drivers/cpufreq/scpi-cpufreq.c | 16
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/drivers/cpufreq/scpi-cpufreq.c b/drivers/cpufreq/
cause init_cpu_capacity_callback lacks a __init
annotation or the annotation of $x is wrong.
Signed-off-by: Gaku Inami
Reviewed-by: Dietmar Eggemann
Tested-by: Dietmar Eggemann
This also helps with cpufreq driver module loading. W/o this revert I
get the following when trying to modprobe scpi-c
On 12/20/2017 03:22 PM, Peter Zijlstra wrote:
On Fri, Dec 01, 2017 at 06:01:57PM +, Brendan Jackman wrote:
@@ -7913,6 +7928,29 @@ static inline void update_sd_lb_stats(struct lb_env
*env, struct sd_lb_stats *sd
if (child && child->flags & SD_PREFER_SIBLING)
prefer_si
big.LITTLE system no
matter which core types it consists of.
Cc: Russell King
Cc: Vincent Guittot
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm/kernel/topology.c | 113 ++---
1 file changed, 3 insertions(+), 110 deletions(-)
diff --g
ected once cpu-invariant accounting
support is re-connected to the task scheduler:
r8a7790-lager
Cc: Rob Herring
Cc: Mark Rutland
Cc: Russell King
Signed-off-by: Dietmar Eggemann
---
arch/arm/boot/dts/r8a7790.dtsi | 8
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/r8a7
ected once cpu-invariant accounting
support is re-connected to the task scheduler:
odroidxu3, odroidxu3-lite, odroidxu4
Cc: Rob Herring
Cc: Mark Rutland
Cc: Russell King
Cc: Kukjin Kim
Cc: Krzysztof Kozlowski
Signed-off-by: Dietmar Eggemann
---
arch/arm/boot/dts/exynos5422-cpus.dtsi | 8 +++
ystem
runs cpu-bound or memory-bound has an impact on the cpu capacity values
derived from these benchmark results.
Cc: Rob Herring
Cc: Mark Rutland
Cc: Russell King
Cc: Kukjin Kim
Cc: Krzysztof Kozlowski
Signed-off-by: Dietmar Eggemann
---
arch/arm/boot/dts/exynos5420-cpus.dtsi | 8
1 fil
e task scheduler uses the default
implementation in kernel/sched/sched.h. This will change as soon the
patch "arm: wire cpu-invariant accounting support up to the task
scheduler" [1] is in mainline.
This patch-set has been tested on TC2 and Samsung Chromebook 2 13"
(peach-pi, Exyn
On 30/08/17 21:26, Krzysztof Kozlowski wrote:
> On Wed, Aug 30, 2017 at 03:41:18PM +0100, Dietmar Eggemann wrote:
>> The following 'capacity-dmips-mhz' dt property values are used:
>>
>> Cortex-A15: 1024, Cortex-A7: 539
>>
>> They have been derived from
Hi Raphael,
On 31/08/17 00:34, Rafael J. Wysocki wrote:
> On Friday, August 25, 2017 4:31:56 PM CEST Dietmar Eggemann wrote:
[...]
>> [1] https://marc.info/?l=linux-kernel&m=149625018223002&w=2
>> [2] https://marc.info/?l=linux-kernel&m=150118402232039&w=2
>>
nel&m=149625018223002&w=2
[2] https://marc.info/?l=linux-kernel&m=150118402232039&w=2
[3] https://marc.info/?l=linux-pm&m=149933474313566&w=2
[4]
http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf
[5] https
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Catalin Marinas
Acked-by: V
Call the frequency-invariance setter function arch_set_freq_scale()
if the new frequency has been successfully set which is indicated by
dev_pm_opp_set_rate() returning 0.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/cpufreq
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by:
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by
Allow inlining of topology_get_cpu_scale() into the task
scheduler fast path (e.g. __update_load_avg_se()) by coding it as a
static inline function in the arch topology header file.
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/base
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by: Russell King
Tested-by
, the (new) current frequency and
the maximum supported frequency.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Signed-off-by: Dietmar Eggemann
---
drivers/cpufreq/cpufreq.c | 6 ++
include/linux/cpufreq.h | 3 +++
2 files changed, 9 insertions(+)
diff --git a/drivers/cpufreq/cpufreq.c b/dr
Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/base/arch_topology.c | 14 ++
include/linux/arch_topology.h | 10 ++
2 files changed, 24 insertions(+)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
Call the frequency-invariance setter function arch_set_freq_scale()
if the new frequency has been successfully set which is indicated by
bL_cpufreq_set_rate() returning 0.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Cc: Sudeep Holla
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
: Vincent Guittot
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by: Viresh Kumar
Tested-by: Juri Lelli
Reviewed-by: Juri Lelli
---
drivers/base/arch_topology.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/base/arch_topology.c b/drivers
Hi Vincent,
On 04/09/17 08:49, Vincent Guittot wrote:
> Hi Dietmar,
>
> Removing cpu effificiency table looks good to me. Nevertheless, i have
> some comments below for this patch.
Thanks for the review!
> On 30 August 2017 at 16:41, Dietmar Eggemann wrote:
>> Remove the
On 03/09/17 20:56, Krzysztof Kozlowski wrote:
> On Thu, Aug 31, 2017 at 11:36:07AM +0100, Dietmar Eggemann wrote:
>> On 30/08/17 21:26, Krzysztof Kozlowski wrote:
>>> On Wed, Aug 30, 2017 at 03:41:18PM +0100, Dietmar Eggemann wrote:
[...]
>>>> The patch has been tes
On 06/09/17 13:40, Vincent Guittot wrote:
> On 6 September 2017 at 13:43, Dietmar Eggemann
> wrote:
>> Hi Vincent,
>>
>> On 04/09/17 08:49, Vincent Guittot wrote:
>>> Hi Dietmar,
>>>
>>> Removing cpu effificiency table looks good to me. Neverthe
Hi Rafael,
On 31/08/17 12:27, Dietmar Eggemann wrote:
> Hi Raphael,
>
> On 31/08/17 00:34, Rafael J. Wysocki wrote:
>> On Friday, August 25, 2017 4:31:56 PM CEST Dietmar Eggemann wrote:
>
> [...]
>
>>> [1] https://marc.info/?l=linux-kernel&m=14962501822
On 08/06/17 08:55, Dietmar Eggemann wrote:
> Implements an arch-specific frequency-scaling function
> topology_get_freq_scale() which provides the following frequency
> scaling factor:
>
> current_freq(cpu) << SCHED_CAPACITY_SHIFT / max_supported_freq(cpu)
[...]
Freque
On 12/05/17 21:57, Jeffrey Hugo wrote:
> On 5/12/2017 2:47 PM, Peter Zijlstra wrote:
>> On Fri, May 12, 2017 at 11:01:37AM -0600, Jeffrey Hugo wrote:
>>> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
>>> index d711093..8f783ba 100644
>>> --- a/kernel/sched/fair.c
>>> +++ b/kernel/sched/fai
On 19/05/17 14:31, Dietmar Eggemann wrote:
> On 18/05/17 20:36, Jeffrey Hugo wrote:
>
> [...]
>
>> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
>> index d711093..a5d41b1 100644
>> --- a/kernel/sched/fair.c
>> +++ b/kernel/sched/fair.c
>> @@ -
Hey Austin,
On 22/05/17 20:57, Christ, Austin wrote:
> Hey Dietmar,
>
>
> On 5/22/2017 3:48 AM, Dietmar Eggemann wrote:
>> On 19/05/17 14:31, Dietmar Eggemann wrote:
>>> On 18/05/17 20:36, Jeffrey Hugo wrote:
>>>
>>> [...]
>>>
>&
On 04/05/17 07:21, Peter Zijlstra wrote:
> On Thu, May 04, 2017 at 07:51:29AM +0200, Peter Zijlstra wrote:
>
>> Urgh, and my numbers were so pretty :/
>
> Just to clarify on how to run schbench, I limited to a single socket (as
> that is what you have) and set -t to the number of cores in the soc
Hi Tejun,
On 04/05/17 18:39, Tejun Heo wrote:
> Hello, Dietmar.
>
> On Thu, May 04, 2017 at 10:49:51AM +0100, Dietmar Eggemann wrote:
>> On 04/05/17 07:21, Peter Zijlstra wrote:
>>> On Thu, May 04, 2017 at 07:51:29AM +0200, Peter Zijlstra wrote:
[...]
>>
&g
Hi Tejun,
On 04/05/17 21:29, Tejun Heo wrote:
> Currently, runnable_load_avg, which represents the portion of load avg
> only from tasks which are currently active, is tracked by cfs_rq but
> not by sched_entity. We want to propagate runnable_load_avg of a
> nested cfs_rq without affecting load_a
On 05/05/17 14:26, Tejun Heo wrote:
> On Fri, May 05, 2017 at 02:22:05PM +0100, Dietmar Eggemann wrote:
>> Hi Tejun,
>>
[...]
>
> The patches are on top of v4.11 as noted in the head message.
Sorry, haven't seen it. Will use v4.11 instead.
[...]
On 06/12/2017 04:27 PM, Vincent Guittot wrote:
> On 8 June 2017 at 09:55, Dietmar Eggemann wrote:
Hi Vincent,
Thanks for the review!
[...]
>> @@ -225,8 +265,14 @@ static int __init register_cpufreq_notifier(void)
>>
>> cpumask_copy(cpus_to_vis
On 28/04/17 16:52, Morten Rasmussen wrote:
> Hi Vincent,
[...]
> As mentioned above, waiting time, i.e. !running && weight, is not
> scaled, which causes trouble for load.
I ran some rt-app-based tests on a system with frequency and cpu invariance.
(1) Two periodic 20% tasks with 12ms period on
On 01/09/17 14:21, Peter Zijlstra wrote:
> The PELT _sum values are a saw-tooth function, dropping on the decay
> edge and then growing back up again during the window.
>
> When these window-edges are not aligned between cfs_rq and se, we can
> have the situation where, for example, on dequeue, th
rnel&m=150118402232039&w=2
[4] https://marc.info/?l=linux-pm&m=149933474313566&w=2
[5]
http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf
[6] https://marc.info/?l=linux-kernel&m=149690865010019&w=2
Dietmar Eggemann (10):
dr
: Vincent Guittot
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by: Viresh Kumar
Tested-by: Juri Lelli
Reviewed-by: Juri Lelli
---
drivers/base/arch_topology.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/base/arch_topology.c b/drivers
, the (new) current frequency and
the maximum supported frequency.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Signed-off-by: Dietmar Eggemann
Acked-by: Rafael J. Wysocki
Acked-by: Viresh Kumar
---
drivers/cpufreq/cpufreq.c | 6 ++
include/linux/cpufreq.h | 3 +++
2 files changed, 9 inser
Call the frequency-invariance setter function arch_set_freq_scale()
if the new frequency has been successfully set which is indicated by
dev_pm_opp_set_rate() returning 0.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/cpufreq
Allow inlining of topology_get_cpu_scale() into the task
scheduler fast path (e.g. __update_load_avg_se()) by coding it as a
static inline function in the arch topology header file.
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/base
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Catalin Marinas
Acked-by: V
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by:
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by
Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
---
drivers/base/arch_topology.c | 14 ++
include/linux/arch_topology.h | 9 +
2 files changed, 23 insertions(+)
diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c
Call the frequency-invariance setter function arch_set_freq_scale()
if the new frequency has been successfully set which is indicated by
bL_cpufreq_set_rate() returning 0.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Cc: Sudeep Holla
Signed-off-by: Dietmar Eggemann
Acked-by: Viresh Kumar
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by: Vincent Guittot
Acked-by: Russell King
Tested-by
On 01/09/17 14:21, Peter Zijlstra wrote:
> The load balancer uses runnable_load_avg as load indicator. For
> !cgroup this is:
>
> runnable_load_avg = \Sum se->avg.load_avg ; where se->on_rq
>
> That is, a direct sum of all runnable tasks on that runqueue. As
> opposed to load_avg, which is a su
On 03/10/17 09:50, Peter Zijlstra wrote:
> On Mon, Oct 02, 2017 at 06:46:32PM +0100, Dietmar Eggemann wrote:
>
>>> +/*
>>> + * Recomputes the group entity based on the current state of its group
>>> + * runqueue.
>>> + */
>>> +s
On 01/09/17 14:21, Peter Zijlstra wrote:
[...]
> @@ -3169,8 +3198,8 @@ ___update_load_sum(u64 now, int cpu, str
>* this happens during idle_balance() which calls
>* update_blocked_averages()
>*/
another nit-pick:
s/weight/load in comment above.
> - if (!weight)
> -
nt in parse_dt_topology()
[01/04]
- Remove 'cpu capacity scale management' and 'cpu capacity table'
related comments [01/04]
- Remove dt related patches [02-04/04]
Dietmar Eggemann (1):
arm: topology: remove cpu_efficiency
arch/arm/kernel/topology.c | 132 ++---
1 file changed, 4 insertions(+), 128 deletions(-)
--
2.11.0
big.LITTLE system no
matter which core types it consists of.
Cc: Russell King
Cc: Vincent Guittot
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm/kernel/topology.c | 132 ++---
1 file changed, 4 insertions(+), 128 deletions(-)
diff --g
On 06/10/17 14:02, Peter Zijlstra wrote:
> On Wed, Oct 04, 2017 at 08:27:01PM +0100, Dietmar Eggemann wrote:
>> On 01/09/17 14:21, Peter Zijlstra wrote:
>>> The PELT _sum values are a saw-tooth function, dropping on the decay
>>> edge and then growing back up again duri
On 18/09/17 08:39, Simon Horman wrote:
> On Wed, Aug 30, 2017 at 03:41:20PM +0100, Dietmar Eggemann wrote:
>> The following 'capacity-dmips-mhz' dt property values are used:
>>
>> Cortex-A15: 1024, Cortex-A7: 539
>>
>> They have been derived form the cp
of the task scheduler.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Russell King
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
drivers/base/arch_topology.c | 52 ---
include/linux/arch_topology.h | 2 ++
2 files changed, 51 inse
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm/include/asm/topology.
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm64/include/asm/topolog
nning a ramp-up
rt-app task pinned to a cpu with the ondemand cpufreq governor and
checking the load-tracking signals of this task.
[1] https://marc.info/?l=linux-kernel&m=149625018223002&w=2
Dietmar Eggemann (6):
drivers base/arch_topology: prepare cpufreq policy notifier for
f
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm64/i
pu loop before the check if cap_parsing_failed so it has to
be a continue.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Russell King
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
drivers/base/arch_topology.c | 12
1 file changed, 8 insertions(+), 4 deleti
river"
function topology_get_freq_scale() for the task scheduler's
frequency-invariant accounting instead of the default
arch_scale_freq_capacity() in kernel/sched/sched.h.
Cc: Russell King
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
arch/arm/include/asm/topology.h | 5 +
arch/arm/k
Hi Rafael,
On 27/07/17 20:33, Dietmar Eggemann wrote:
[...]
> Patch high level description:
>
>[ 01/10] Fix to free cpumask cpus_to_visit
>[ 02/10] Default (empty, weak) arch_set_freq_scale() implementation
>[03,04/10] Call arch_set_freq_scale() from two
On 26/07/17 15:54, Peter Zijlstra wrote:
> On Tue, Jul 18, 2017 at 08:48:53PM +0100, Dietmar Eggemann wrote:
>> Hi Jeffrey,
>>
>> On 13/07/17 20:55, Jeffrey Hugo wrote:
[...]
>>> Since the group imbalance path in calculate_imbalance() is at best a NOP
>&g
On 28/07/17 13:59, Peter Zijlstra wrote:
> On Fri, Jul 28, 2017 at 01:16:24PM +0100, Dietmar Eggemann wrote:
>>>> IIRC the topology you had in mind was MC + DIE level with n (n > 2) DIE
>>>> level sched groups.
[...]
>>> If I then start a 3rd loop,
Hi Viresh,
On 28/07/17 08:30, Viresh Kumar wrote:
> On 27-07-17, 20:33, Dietmar Eggemann wrote:
>> diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
>> index 9bf97a366029..04e2f7e4964e 100644
>> --- a/drivers/cpufreq/cpufreq.c
>> +++ b/drivers/cpuf
Hi Russell,
On 27/07/17 20:33, Dietmar Eggemann wrote:
[...]
> Patch high level description:
>
>[ 01/10] Fix to free cpumask cpus_to_visit
>[ 02/10] Default (empty, weak) arch_set_freq_scale() implementation
>[03,04/10] Call arch_set_freq_scale() from two
s://marc.info/?l=linux-pm&m=149933474313566&w=2
[3]
http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf
[4] https://marc.info/?l=linux-kernel&m=149690865010019&w=2
Dietmar Eggemann (10):
drivers base/arch_topology: free cpumask cpus_to_visit
cpufreq: provide d
Call the frequency-invariance setter function arch_set_freq_scale()
if the new frequency has been successfully set which is indicated by
bL_cpufreq_set_rate() returning 0.
Cc: Rafael J. Wysocki
Cc: Viresh Kumar
Cc: Sudeep Holla
Signed-off-by: Dietmar Eggemann
---
drivers/cpufreq
Allow inlining of topology_get_cpu_scale() into the task
scheduler fast path (e.g. __update_load_avg_se()) by coding it as a
static inline function in the arch topology header file.
Cc: Greg Kroah-Hartman
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
---
drivers/base/arch_topology.c | 7
to use the arch_topology "driver"
function topology_get_cpu_scale() for the task scheduler's cpu-invariant
accounting instead of the default arch_scale_cpu_capacity() in
kernel/sched/sched.h.
Cc: Catalin Marinas
Cc: Will Deacon
Cc: Juri Lelli
Signed-off-by: Dietmar Eggemann
Acked-by:
701 - 800 of 871 matches
Mail list logo