Commit 381abb94 authored by Viresh Kumar's avatar Viresh Kumar Committed by Rafael J. Wysocki

cpufreq: stats: Remove locking

The locking isn't required anymore as stats can get updated only from
one place at a time. Remove it.
Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 40c3bd4c
...@@ -19,7 +19,6 @@ struct cpufreq_stats { ...@@ -19,7 +19,6 @@ struct cpufreq_stats {
unsigned int state_num; unsigned int state_num;
unsigned int last_index; unsigned int last_index;
u64 *time_in_state; u64 *time_in_state;
spinlock_t lock;
unsigned int *freq_table; unsigned int *freq_table;
unsigned int *trans_table; unsigned int *trans_table;
...@@ -41,7 +40,6 @@ static void cpufreq_stats_reset_table(struct cpufreq_stats *stats) ...@@ -41,7 +40,6 @@ static void cpufreq_stats_reset_table(struct cpufreq_stats *stats)
{ {
unsigned int count = stats->max_state; unsigned int count = stats->max_state;
spin_lock(&stats->lock);
memset(stats->time_in_state, 0, count * sizeof(u64)); memset(stats->time_in_state, 0, count * sizeof(u64));
memset(stats->trans_table, 0, count * count * sizeof(int)); memset(stats->trans_table, 0, count * count * sizeof(int));
stats->last_time = get_jiffies_64(); stats->last_time = get_jiffies_64();
...@@ -50,7 +48,6 @@ static void cpufreq_stats_reset_table(struct cpufreq_stats *stats) ...@@ -50,7 +48,6 @@ static void cpufreq_stats_reset_table(struct cpufreq_stats *stats)
/* Adjust for the time elapsed since reset was requested */ /* Adjust for the time elapsed since reset was requested */
WRITE_ONCE(stats->reset_pending, 0); WRITE_ONCE(stats->reset_pending, 0);
cpufreq_stats_update(stats, READ_ONCE(stats->reset_time)); cpufreq_stats_update(stats, READ_ONCE(stats->reset_time));
spin_unlock(&stats->lock);
} }
static ssize_t show_total_trans(struct cpufreq_policy *policy, char *buf) static ssize_t show_total_trans(struct cpufreq_policy *policy, char *buf)
...@@ -244,7 +241,6 @@ void cpufreq_stats_create_table(struct cpufreq_policy *policy) ...@@ -244,7 +241,6 @@ void cpufreq_stats_create_table(struct cpufreq_policy *policy)
stats->state_num = i; stats->state_num = i;
stats->last_time = get_jiffies_64(); stats->last_time = get_jiffies_64();
stats->last_index = freq_table_get_index(stats, policy->cur); stats->last_index = freq_table_get_index(stats, policy->cur);
spin_lock_init(&stats->lock);
policy->stats = stats; policy->stats = stats;
ret = sysfs_create_group(&policy->kobj, &stats_attr_group); ret = sysfs_create_group(&policy->kobj, &stats_attr_group);
...@@ -277,11 +273,9 @@ void cpufreq_stats_record_transition(struct cpufreq_policy *policy, ...@@ -277,11 +273,9 @@ void cpufreq_stats_record_transition(struct cpufreq_policy *policy,
if (old_index == -1 || new_index == -1 || old_index == new_index) if (old_index == -1 || new_index == -1 || old_index == new_index)
return; return;
spin_lock(&stats->lock);
cpufreq_stats_update(stats, stats->last_time); cpufreq_stats_update(stats, stats->last_time);
stats->last_index = new_index; stats->last_index = new_index;
stats->trans_table[old_index * stats->max_state + new_index]++; stats->trans_table[old_index * stats->max_state + new_index]++;
stats->total_trans++; stats->total_trans++;
spin_unlock(&stats->lock);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment