summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorChanwoo Choi <cw00.choi@samsung.com>2014-08-19 15:44:33 +0900
committerChanho Park <chanho61.park@samsung.com>2014-11-18 12:00:37 +0900
commitaf93d7c8d75c258d0f031e989ffcb5c4be906830 (patch)
treec6a319e1ba0814f35694d26603ab011be1254ff3 /Documentation
parent06e7eaeb3d022d8d345ce7c26b7b692679125fe0 (diff)
downloadlinux-3.10-af93d7c8d75c258d0f031e989ffcb5c4be906830.tar.gz
linux-3.10-af93d7c8d75c258d0f031e989ffcb5c4be906830.tar.bz2
linux-3.10-af93d7c8d75c258d0f031e989ffcb5c4be906830.zip
cpufreq: stats: Add 'load_table' debugfs file to show accumulated data of CPUs
This patch add new 'load_table' debugfs file to show previous accumulated data of CPUs load as following path and add CPUFREQ_LOADCHECK notification to CPUFREQ_TRANSITION_NOTIFIER notifier chain. - /sys/kernel/debug/cpufreq/cpuX/load_table When governor calculates CPUs load on dbs_check_cpu(), governor send CPUFREQ_LOADCHECK notification with CPUs load, so that cpufreq_stats accumulates calculated CPUs load on 'load_table' storage. This debugfs file is used to judge the correct system state or determine suitable system resource according to current CPUs load on user-space. This debugfs file include following data: - Measurement point of time - CPU frequency - Per-CPU load Changes since v6: - Remove unnecessary memory free/allocation operation on cpufreq_stats_reset_debugfs() - Get correct index of cpu_debugfs[] array according to cpu number - Reset 'load_table' data when cpufreq governor is changed or updated because specific governor(e.g., performance/powersave) haven't used 'load_table; debugfs file. Changes since v5: - Determine index value of policy->cpu_debugfs[] according to cpumask_weight(policy->cpus) value - Bug fix, store 'policy->cpu' to 'freq->cpu' before notify CPUFREQ_LOADCHECK notification Changes since v4: - Reset the data of CPUs load when cpufreq governor is changed - Move code about creating debugfs directory to below first patch : [PATCH 1/2] cpufreq: Add debugfs directory for cpufreq Changes since v3: - Extend a range of accumulated data (10 ~ 1000) - Add unit information of time/freq and align 'Time' field as left for readability - Use CONFIG_CPU_FREQ_STAT depdendency instead of CONFIG_CPU_FREQ_STAT_DETATILS - Initialize load of offline CPUx as zero(0) - Create/remove debugfs root directory on cpufreq_stats_init/exit() because debugfs root is used on all CPUs. Changes since v2: - Code clean according to Viresh Kumar's comment - Show both old frequency and new frequency on 'load_table' debugfs file - Change debufs file patch as below old: /sys/kernel/debugfs/cpufreq/load_table new: /sys/kernel/debugfs/cpufreq/cpuX/load_table Changes since v1: - Set maximum storage size to save CPUs load on Kconfig - Use spinlock to synchronize read/write operation for CPUs load - Use local variable instead of global variable(struct cpufreq_freqs *freqs) - Use pointer of data structure to get correct size of data structure in sizeof() macro instead of structure name : sizeof(struct cpufreq_freqs) -> sizeof(*stat->load_table) - Change time unit from nanosecond to microsecond - Remove unnecessary memory copy Change-Id: I14e68196360a3ec00a36e7357b8c73c887abddce Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions