#ifdef CONFIG_CPU_FREQ_TIMES
void cpufreq_task_times_init(struct task_struct *p);
-<<<<<<< HEAD
-=======
void cpufreq_task_times_alloc(struct task_struct *p);
->>>>>>> 818299f6bdae
void cpufreq_task_times_exit(struct task_struct *p);
int proc_time_in_state_show(struct seq_file *m, struct pid_namespace *ns,
struct pid *pid, struct task_struct *p);
void cpufreq_acct_update_power(struct task_struct *p, u64 cputime);
void cpufreq_times_create_policy(struct cpufreq_policy *policy);
void cpufreq_times_record_transition(struct cpufreq_freqs *freq);
-<<<<<<< HEAD
-#else
-static inline void cpufreq_times_create_policy(struct cpufreq_policy *policy) {}
-static inline void cpufreq_times_record_transition(
- struct cpufreq_freqs *freq) {}
-=======
void cpufreq_task_times_remove_uids(uid_t uid_start, uid_t uid_end);
int single_uid_time_in_state_open(struct inode *inode, struct file *file);
#else
struct cpufreq_freqs *freq) {}
static inline void cpufreq_task_times_remove_uids(uid_t uid_start,
uid_t uid_end) {}
->>>>>>> 818299f6bdae
#endif /* CONFIG_CPU_FREQ_TIMES */
#endif /* _LINUX_CPUFREQ_TIMES_H */
}
}
-<<<<<<< HEAD
-=======
-#ifdef CONFIG_NO_HZ_COMMON
-static bool sugov_cpu_is_busy(struct sugov_cpu *sg_cpu)
-{
- unsigned long idle_calls = tick_nohz_get_idle_calls_cpu(sg_cpu->cpu);
- bool ret = idle_calls == sg_cpu->saved_idle_calls;
-
- sg_cpu->saved_idle_calls = idle_calls;
- return ret;
-}
-#else
-static inline bool sugov_cpu_is_busy(struct sugov_cpu *sg_cpu) { return false; }
-#endif /* CONFIG_NO_HZ_COMMON */
-
-static void sugov_update_single(struct update_util_data *hook, u64 time,
- unsigned int flags)
-{
- struct sugov_cpu *sg_cpu = container_of(hook, struct sugov_cpu, update_util);
- struct sugov_policy *sg_policy = sg_cpu->sg_policy;
- struct cpufreq_policy *policy = sg_policy->policy;
- unsigned long util, max;
- unsigned int next_f;
- bool busy;
-
- sugov_set_iowait_boost(sg_cpu, time, flags);
- sg_cpu->last_update = time;
-
- if (!sugov_should_update_freq(sg_policy, time))
- return;
-
- busy = sugov_cpu_is_busy(sg_cpu);
-
- if (flags & SCHED_CPUFREQ_DL) {
- next_f = policy->cpuinfo.max_freq;
- } else {
- sugov_get_util(&util, &max, sg_cpu->cpu);
- sugov_iowait_boost(sg_cpu, &util, &max);
- next_f = get_next_freq(sg_policy, util, max);
- /*
- * Do not reduce the frequency if the CPU has not been idle
- * recently, as the reduction is likely to be premature then.
- */
- if (busy && next_f < sg_policy->next_freq &&
- sg_policy->next_freq != UINT_MAX) {
- next_f = sg_policy->next_freq;
-
- /* Reset cached freq as next_freq has changed */
- sg_policy->cached_raw_freq = 0;
- }
- }
-
- sugov_update_commit(sg_policy, time, next_f);
-}
-
->>>>>>> 818299f6bdae
static unsigned int sugov_next_freq_shared(struct sugov_cpu *sg_cpu, u64 time)
{
struct sugov_policy *sg_policy = sg_cpu->sg_policy;
/* Account for user time used */
acct_account_cputime(p);
-<<<<<<< HEAD
-#ifdef CONFIG_CPU_FREQ_TIMES
/* Account power usage for user time */
cpufreq_acct_update_power(p, cputime);
-#endif
-=======
- /* Account power usage for user time */
- cpufreq_acct_update_power(p, cputime);
->>>>>>> 818299f6bdae
}
/*
/* Account for system time used */
acct_account_cputime(p);
-<<<<<<< HEAD
-#ifdef CONFIG_CPU_FREQ_TIMES
- /* Account power usage for system time */
- cpufreq_acct_update_power(p, cputime);
-#endif
-=======
/* Account power usage for system time */
cpufreq_acct_update_power(p, cputime);
->>>>>>> 818299f6bdae
}
/*