Messages in this thread Patch in this message | | | From | Lan Tianyu <> | Subject | [PATCH V2 2/2] Cpufreq/gov: use tick_nohz_check() to check idle micro accouting support | Date | Fri, 15 Nov 2013 16:35:35 +0800 |
| |
Current, od_init() uses get_cpu_idle_time_us() to check whether idle micro accouting is supported. The get_cpu_idle_time_us() returns -1 only when tick nohz is disabled. This patch is to use tick_nohz_check() directly to check nohz enable status instead of get_cpu_idle_time_us(). This can avoid unnecessary getting and putting cpu.
Signed-off-by: Lan Tianyu <tianyu.lan@intel.com> --- drivers/cpufreq/cpufreq_ondemand.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c index 18d4091..7db2468 100644 --- a/drivers/cpufreq/cpufreq_ondemand.c +++ b/drivers/cpufreq/cpufreq_ondemand.c @@ -475,8 +475,6 @@ static struct attribute_group od_attr_group_gov_pol = { static int od_init(struct dbs_data *dbs_data) { struct od_dbs_tuners *tuners; - u64 idle_time; - int cpu; tuners = kzalloc(sizeof(*tuners), GFP_KERNEL); if (!tuners) { @@ -484,10 +482,7 @@ static int od_init(struct dbs_data *dbs_data) return -ENOMEM; } - cpu = get_cpu(); - idle_time = get_cpu_idle_time_us(cpu, NULL); - put_cpu(); - if (idle_time != -1ULL) { + if (tick_nohz_check()) { /* Idle micro accounting is supported. Use finer thresholds */ tuners->up_threshold = MICRO_FREQUENCY_UP_THRESHOLD; /* -- 1.8.4.rc0.1.g8f6a3e5.dirty
| |