linux/kernel/sched
Dietmar Eggemann 262200a0ab ANDROID: sched/debug: Add energy procfs interface
This patch makes the energy data available via procfs. The related files
are placed as sub-directory named 'energy' inside the
/proc/sys/kernel/sched_domain/cpuX/domainY/groupZ directory for those
cpu/domain/group tuples which have energy information.

The following example depicts the contents of
/proc/sys/kernel/sched_domain/cpu0/domain0/group[01] for a system which
has energy information attached to domain level 0.

├── cpu0
│   ├── domain0
│   │   ├── busy_factor
│   │   ├── busy_idx
│   │   ├── cache_nice_tries
│   │   ├── flags
│   │   ├── forkexec_idx
│   │   ├── group0
│   │   │   └── energy
│   │   │       ├── cap_states
│   │   │       ├── idle_states
│   │   │       ├── nr_cap_states
│   │   │       └── nr_idle_states
│   │   ├── group1
│   │   │   └── energy
│   │   │       ├── cap_states
│   │   │       ├── idle_states
│   │   │       ├── nr_cap_states
│   │   │       └── nr_idle_states
│   │   ├── idle_idx
│   │   ├── imbalance_pct
│   │   ├── max_interval
│   │   ├── max_newidle_lb_cost
│   │   ├── min_interval
│   │   ├── name
│   │   ├── newidle_idx
│   │   └── wake_idx
│   └── domain1
│       ├── busy_factor
│       ├── busy_idx
│       ├── cache_nice_tries
│       ├── flags
│       ├── forkexec_idx
│       ├── idle_idx
│       ├── imbalance_pct
│       ├── max_interval
│       ├── max_newidle_lb_cost
│       ├── min_interval
│       ├── name
│       ├── newidle_idx
│       └── wake_idx

The files 'nr_idle_states' and 'nr_cap_states' contain a scalar value
whereas 'idle_states' and 'cap_states' contain a vector of power
consumption at this idle state respectively (compute capacity, power
consumption) at this capacity state.

Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
2017-01-31 10:47:14 -08:00
..
auto_group.c sched/autogroup: Fix 64-bit kernel nice level adjustment 2016-11-24 05:45:02 +01:00
auto_group.h sched, timer: Convert usages of ACCESS_ONCE() in the scheduler to READ_ONCE()/WRITE_ONCE() 2015-05-08 12:11:32 +02:00
clock.c sched/clock: Make local_clock()/cpu_clock() inline 2016-04-13 12:25:22 +02:00
completion.c sched/completion: Serialize completion_done() with complete() 2015-02-18 14:27:40 +01:00
core.c ANDROID: FIXUP: sched: fix SchedFreq integration for both PELT and WALT 2017-01-31 10:47:01 -08:00
cpuacct.c sched/cpuacct: Introduce cpuacct.usage_all to show all CPU stats together 2016-07-09 13:56:15 +02:00
cpuacct.h sched/cpuacct: Simplify the cpuacct code 2016-03-21 11:00:28 +01:00
cpudeadline.c sched/deadline: Split cpudl_set() into cpudl_set() and cpudl_clear() 2016-09-05 13:29:43 +02:00
cpudeadline.h sched/deadline: Split cpudl_set() into cpudl_set() and cpudl_clear() 2016-09-05 13:29:43 +02:00
cpufreq_sched.c ANDROID: cpufreq: sched: Fix kernel crash on accessing sysfs file 2017-01-31 10:47:13 -08:00
cpufreq.c cpufreq / sched: Pass flags to cpufreq_update_util() 2016-08-16 22:14:55 +02:00
cpupri.c sched/core: Use tsk_cpus_allowed() instead of accessing ->cpus_allowed 2016-05-12 09:55:35 +02:00
cpupri.h
cputime.c ANDROID: sched/walt: Accounting for number of irqs pending on each core 2017-01-31 10:46:59 -08:00
deadline.c Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-10-03 13:39:00 -07:00
debug.c ANDROID: sched/debug: Add energy procfs interface 2017-01-31 10:47:14 -08:00
energy.c ANDROID: sched: Support for extracting EAS energy costs from DT 2017-01-31 10:46:14 -08:00
fair.c ANDROID: sched/fair: Favor higher cpus only for boosted tasks 2017-01-31 10:47:09 -08:00
features.h ANDROID: sched: Make energy awareness a sched feature 2017-01-31 10:46:10 -08:00
idle_task.c sched/core: Rewrite and improve select_idle_siblings() 2016-09-30 11:03:09 +02:00
idle.c ANDROID: sched, cpuidle: Track cpuidle state index in the scheduler 2017-01-31 10:46:19 -08:00
loadavg.c sched/core: Correct off by one bug in load migration calculation 2016-07-13 14:58:20 +02:00
Makefile ANDROID: sched: Introduce Window Assisted Load Tracking (WALT) 2017-01-31 10:46:58 -08:00
rt.c ANDROID: sched/rt: Add Kconfig option to enable panicking for RT throttling 2017-01-31 10:47:10 -08:00
sched.h ANDROID: FIXUP: sched: Fix double-release of spinlock in move_queued_task 2017-01-31 10:47:02 -08:00
stats.c
stats.h sched/debug: Rename 'schedstat_val()' -> 'schedstat_val_or_zero()' 2016-09-05 13:29:46 +02:00
stop_task.c ANDROID: sched: Introduce Window Assisted Load Tracking (WALT) 2017-01-31 10:46:58 -08:00
swait.c wait.[ch]: Introduce the simple waitqueue (swait) implementation 2016-02-25 11:27:16 +01:00
tune.c ANDROID: FIXUP: sched/tune: add fixes missing from a previous patch 2017-01-31 10:47:13 -08:00
tune.h ANDROID: sched/tune: Introducing a new schedtune attribute prefer_idle 2017-01-31 10:47:04 -08:00
wait.c mm: remove per-zone hashtable of bitlock waitqueues 2016-10-27 09:27:57 -07:00
walt.c ANDROID: arch_timer: add error handling when the MPM global timer is cleared 2017-01-31 10:47:03 -08:00
walt.h ANDROID: sched/walt: Accounting for number of irqs pending on each core 2017-01-31 10:46:59 -08:00