瀏覽代碼

sched: rt: account the cpu time during the tick

Realtime tasks would not account their runtime during ticks. Which would lead
to:

        struct sched_param param = { .sched_priority = 10 };
        pthread_setschedparam(pthread_self(), SCHED_FIFO, &param);

	while (1) ;

Not showing up in top.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Peter Zijlstra 17 年之前
父節點
當前提交
67e2be0232
共有 1 個文件被更改,包括 2 次插入0 次删除
  1. 2 0
      kernel/sched_rt.c

+ 2 - 0
kernel/sched_rt.c

@@ -208,6 +208,8 @@ move_one_task_rt(struct rq *this_rq, int this_cpu, struct rq *busiest,
 
 
 static void task_tick_rt(struct rq *rq, struct task_struct *p)
 static void task_tick_rt(struct rq *rq, struct task_struct *p)
 {
 {
+	update_curr_rt(rq);
+
 	/*
 	/*
 	 * RR tasks need a special form of timeslice management.
 	 * RR tasks need a special form of timeslice management.
 	 * FIFO tasks have no timeslices.
 	 * FIFO tasks have no timeslices.