aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWanpeng Li <wanpeng.li@linux.intel.com>2015-03-10 00:20:00 -0400
committerIngo Molnar <mingo@kernel.org>2015-03-10 00:46:50 -0400
commit44fb085bfa17628c6d2aaa6af6b292a8499e9cbd (patch)
treeb36a7e11fa7cb3bf9dfb86c56c72431ab86b773e
parent1e78cdbd9b2266503339accafe0ebdd99b93a531 (diff)
sched/deadline: Add rq->clock update skip for dl task yield
This patch adds rq->clock update skip for SCHED_DEADLINE task yield, to tell update_rq_clock() that we've just updated the clock, so that we don't do a microscopic update in schedule() and double the fastpath cost. Signed-off-by: Wanpeng Li <wanpeng.li@linux.intel.com> Cc: Juri Lelli <juri.lelli@arm.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/1425961200-3809-1-git-send-email-wanpeng.li@linux.intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--kernel/sched/deadline.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
index 3fa8fa6d9403..0a81a954c041 100644
--- a/kernel/sched/deadline.c
+++ b/kernel/sched/deadline.c
@@ -914,6 +914,12 @@ static void yield_task_dl(struct rq *rq)
914 } 914 }
915 update_rq_clock(rq); 915 update_rq_clock(rq);
916 update_curr_dl(rq); 916 update_curr_dl(rq);
917 /*
918 * Tell update_rq_clock() that we've just updated,
919 * so we don't do microscopic update in schedule()
920 * and double the fastpath cost.
921 */
922 rq_clock_skip_update(rq, true);
917} 923}
918 924
919#ifdef CONFIG_SMP 925#ifdef CONFIG_SMP