summaryrefslogtreecommitdiff
path: root/kernel/sched/sched.h
diff options
context:
space:
mode:
authorSrivatsa Vaddagiri <vatsa@codeaurora.org>2016-05-13 02:05:32 -0700
committerPavankumar Kondeti <pkondeti@codeaurora.org>2016-12-16 16:50:51 +0530
commitf8c7c6ffdfb366efce72a4df93d124659a246b8c (patch)
treec9a7d3cc5acdf1c70b68482aae03bc6bb38cc2b6 /kernel/sched/sched.h
parent3162449f7d245d45f007d4ea3224576ddf1bcc63 (diff)
sched: Track burst length for tasks
Track burst length for tasks as time they ran from wakeup to sleep. This is used to predict average time a task may run when it wakes up and thus avoid waking up idle cpu for "short-burst" tasks. Change-Id: Ie71d3163630fb8aa0db8ee8383768f8748270cf9 Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org> Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Diffstat (limited to 'kernel/sched/sched.h')
-rw-r--r--kernel/sched/sched.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
index f569c6fe3cbb..6b9f11d9a47c 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -1109,6 +1109,8 @@ extern int update_preferred_cluster(struct related_thread_group *grp,
extern void set_preferred_cluster(struct related_thread_group *grp);
extern void add_new_task_to_grp(struct task_struct *new);
extern unsigned int update_freq_aggregate_threshold(unsigned int threshold);
+extern void update_avg_burst(struct task_struct *p);
+extern void update_avg(u64 *avg, u64 sample);
enum sched_boost_policy {
SCHED_BOOST_NONE,
@@ -1647,6 +1649,8 @@ static inline int alloc_related_thread_groups(void) { return 0; }
#define trace_sched_cpu_load_cgroup(...)
#define trace_sched_cpu_load_wakeup(...)
+static inline void update_avg_burst(struct task_struct *p) {}
+
#endif /* CONFIG_SCHED_HMP */
/*