View | Details | Raw Unified | Return to bug 305162
Collapse All | Expand All

(-)a/drivers/cpufreq/cpufreq_ondemand.c (-7 / +18 lines)
Lines 96-110 static struct dbs_tuners { Link Here
96
96
97
static inline cputime64_t get_cpu_idle_time(unsigned int cpu)
97
static inline cputime64_t get_cpu_idle_time(unsigned int cpu)
98
{
98
{
99
	cputime64_t retval;
99
	cputime64_t idle_time;
100
	cputime64_t cur_jiffies;
101
	cputime64_t busy_time;
100
102
101
	retval = cputime64_add(kstat_cpu(cpu).cpustat.idle,
103
	cur_jiffies = jiffies64_to_cputime64(get_jiffies_64());
102
			kstat_cpu(cpu).cpustat.iowait);
104
	busy_time = cputime64_add(kstat_cpu(cpu).cpustat.user,
105
			kstat_cpu(cpu).cpustat.system);
103
106
104
	if (dbs_tuners_ins.ignore_nice)
107
	busy_time = cputime64_add(busy_time, kstat_cpu(cpu).cpustat.irq);
105
		retval = cputime64_add(retval, kstat_cpu(cpu).cpustat.nice);
108
	busy_time = cputime64_add(busy_time, kstat_cpu(cpu).cpustat.softirq);
109
	busy_time = cputime64_add(busy_time, kstat_cpu(cpu).cpustat.steal);
106
110
107
	return retval;
111
	if (!dbs_tuners_ins.ignore_nice) {
112
		busy_time = cputime64_add(busy_time,
113
				kstat_cpu(cpu).cpustat.nice);
114
	}
115
116
	idle_time = cputime64_sub(cur_jiffies, busy_time);
117
	return idle_time;
108
}
118
}
109
119
110
/*
120
/*
Lines 339-345 static void dbs_check_cpu(struct cpu_dbs_info_s *this_dbs_info) Link Here
339
	cur_jiffies = jiffies64_to_cputime64(get_jiffies_64());
349
	cur_jiffies = jiffies64_to_cputime64(get_jiffies_64());
340
	total_ticks = (unsigned int) cputime64_sub(cur_jiffies,
350
	total_ticks = (unsigned int) cputime64_sub(cur_jiffies,
341
			this_dbs_info->prev_cpu_wall);
351
			this_dbs_info->prev_cpu_wall);
342
	this_dbs_info->prev_cpu_wall = cur_jiffies;
352
	this_dbs_info->prev_cpu_wall = get_jiffies_64();
353
343
	if (!total_ticks)
354
	if (!total_ticks)
344
		return;
355
		return;
345
	/*
356
	/*

Return to bug 305162