aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched_debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sched_debug.c')
-rw-r--r--kernel/sched_debug.c46
1 files changed, 24 insertions, 22 deletions
diff --git a/kernel/sched_debug.c b/kernel/sched_debug.c
index 3625a6598699..baf2f17af462 100644
--- a/kernel/sched_debug.c
+++ b/kernel/sched_debug.c
@@ -173,7 +173,7 @@ void print_cfs_rq(struct seq_file *m, int cpu, struct cfs_rq *cfs_rq)
173 last = __pick_last_entity(cfs_rq); 173 last = __pick_last_entity(cfs_rq);
174 if (last) 174 if (last)
175 max_vruntime = last->vruntime; 175 max_vruntime = last->vruntime;
176 min_vruntime = rq->cfs.min_vruntime; 176 min_vruntime = cfs_rq->min_vruntime;
177 rq0_min_vruntime = per_cpu(runqueues, 0).cfs.min_vruntime; 177 rq0_min_vruntime = per_cpu(runqueues, 0).cfs.min_vruntime;
178 spin_unlock_irqrestore(&rq->lock, flags); 178 spin_unlock_irqrestore(&rq->lock, flags);
179 SEQ_printf(m, " .%-30s: %Ld.%06ld\n", "MIN_vruntime", 179 SEQ_printf(m, " .%-30s: %Ld.%06ld\n", "MIN_vruntime",
@@ -190,26 +190,8 @@ void print_cfs_rq(struct seq_file *m, int cpu, struct cfs_rq *cfs_rq)
190 SPLIT_NS(spread0)); 190 SPLIT_NS(spread0));
191 SEQ_printf(m, " .%-30s: %ld\n", "nr_running", cfs_rq->nr_running); 191 SEQ_printf(m, " .%-30s: %ld\n", "nr_running", cfs_rq->nr_running);
192 SEQ_printf(m, " .%-30s: %ld\n", "load", cfs_rq->load.weight); 192 SEQ_printf(m, " .%-30s: %ld\n", "load", cfs_rq->load.weight);
193#ifdef CONFIG_SCHEDSTATS
194#define P(n) SEQ_printf(m, " .%-30s: %d\n", #n, rq->n);
195
196 P(yld_exp_empty);
197 P(yld_act_empty);
198 P(yld_both_empty);
199 P(yld_count);
200 193
201 P(sched_switch); 194 SEQ_printf(m, " .%-30s: %d\n", "nr_spread_over",
202 P(sched_count);
203 P(sched_goidle);
204
205 P(ttwu_count);
206 P(ttwu_local);
207
208 P(bkl_count);
209
210#undef P
211#endif
212 SEQ_printf(m, " .%-30s: %ld\n", "nr_spread_over",
213 cfs_rq->nr_spread_over); 195 cfs_rq->nr_spread_over);
214#ifdef CONFIG_FAIR_GROUP_SCHED 196#ifdef CONFIG_FAIR_GROUP_SCHED
215#ifdef CONFIG_SMP 197#ifdef CONFIG_SMP
@@ -285,6 +267,25 @@ static void print_cpu(struct seq_file *m, int cpu)
285#undef P 267#undef P
286#undef PN 268#undef PN
287 269
270#ifdef CONFIG_SCHEDSTATS
271#define P(n) SEQ_printf(m, " .%-30s: %d\n", #n, rq->n);
272
273 P(yld_exp_empty);
274 P(yld_act_empty);
275 P(yld_both_empty);
276 P(yld_count);
277
278 P(sched_switch);
279 P(sched_count);
280 P(sched_goidle);
281
282 P(ttwu_count);
283 P(ttwu_local);
284
285 P(bkl_count);
286
287#undef P
288#endif
288 print_cfs_stats(m, cpu); 289 print_cfs_stats(m, cpu);
289 print_rt_stats(m, cpu); 290 print_rt_stats(m, cpu);
290 291
@@ -447,10 +448,11 @@ void proc_sched_show_task(struct task_struct *p, struct seq_file *m)
447#undef __P 448#undef __P
448 449
449 { 450 {
451 unsigned int this_cpu = raw_smp_processor_id();
450 u64 t0, t1; 452 u64 t0, t1;
451 453
452 t0 = sched_clock(); 454 t0 = cpu_clock(this_cpu);
453 t1 = sched_clock(); 455 t1 = cpu_clock(this_cpu);
454 SEQ_printf(m, "%-35s:%21Ld\n", 456 SEQ_printf(m, "%-35s:%21Ld\n",
455 "clock-delta", (long long)(t1-t0)); 457 "clock-delta", (long long)(t1-t0));
456 } 458 }