diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-07-04 11:56:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-07-04 11:56:53 -0400 |
commit | 22a093b2fb52fb656658a32adc80c24ddc200ca4 (patch) | |
tree | d0edd1065ee10369ca204404e43bdeece71d3d5e /fs/proc | |
parent | c1776a18e3b5a3559f3dff5df0ecce570abd3a9f (diff) | |
parent | 397f2378f136128623fc237746157aa2564d1082 (diff) |
Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler fixes from Ingo Molnar:
"Debug info and other statistics fixes and related enhancements"
* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
sched/numa: Fix numa balancing stats in /proc/pid/sched
sched/numa: Show numa_group ID in /proc/sched_debug task listings
sched/debug: Move print_cfs_rq() declaration to kernel/sched/sched.h
sched/stat: Expose /proc/pid/schedstat if CONFIG_SCHED_INFO=y
sched/stat: Simplify the sched_info accounting dependency
Diffstat (limited to 'fs/proc')
-rw-r--r-- | fs/proc/base.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/fs/proc/base.c b/fs/proc/base.c index 1d540b3f226f..87782e874b6a 100644 --- a/fs/proc/base.c +++ b/fs/proc/base.c | |||
@@ -491,14 +491,17 @@ static int proc_pid_stack(struct seq_file *m, struct pid_namespace *ns, | |||
491 | } | 491 | } |
492 | #endif | 492 | #endif |
493 | 493 | ||
494 | #ifdef CONFIG_SCHEDSTATS | 494 | #ifdef CONFIG_SCHED_INFO |
495 | /* | 495 | /* |
496 | * Provides /proc/PID/schedstat | 496 | * Provides /proc/PID/schedstat |
497 | */ | 497 | */ |
498 | static int proc_pid_schedstat(struct seq_file *m, struct pid_namespace *ns, | 498 | static int proc_pid_schedstat(struct seq_file *m, struct pid_namespace *ns, |
499 | struct pid *pid, struct task_struct *task) | 499 | struct pid *pid, struct task_struct *task) |
500 | { | 500 | { |
501 | seq_printf(m, "%llu %llu %lu\n", | 501 | if (unlikely(!sched_info_on())) |
502 | seq_printf(m, "0 0 0\n"); | ||
503 | else | ||
504 | seq_printf(m, "%llu %llu %lu\n", | ||
502 | (unsigned long long)task->se.sum_exec_runtime, | 505 | (unsigned long long)task->se.sum_exec_runtime, |
503 | (unsigned long long)task->sched_info.run_delay, | 506 | (unsigned long long)task->sched_info.run_delay, |
504 | task->sched_info.pcount); | 507 | task->sched_info.pcount); |
@@ -2787,7 +2790,7 @@ static const struct pid_entry tgid_base_stuff[] = { | |||
2787 | #ifdef CONFIG_STACKTRACE | 2790 | #ifdef CONFIG_STACKTRACE |
2788 | ONE("stack", S_IRUSR, proc_pid_stack), | 2791 | ONE("stack", S_IRUSR, proc_pid_stack), |
2789 | #endif | 2792 | #endif |
2790 | #ifdef CONFIG_SCHEDSTATS | 2793 | #ifdef CONFIG_SCHED_INFO |
2791 | ONE("schedstat", S_IRUGO, proc_pid_schedstat), | 2794 | ONE("schedstat", S_IRUGO, proc_pid_schedstat), |
2792 | #endif | 2795 | #endif |
2793 | #ifdef CONFIG_LATENCYTOP | 2796 | #ifdef CONFIG_LATENCYTOP |
@@ -3135,7 +3138,7 @@ static const struct pid_entry tid_base_stuff[] = { | |||
3135 | #ifdef CONFIG_STACKTRACE | 3138 | #ifdef CONFIG_STACKTRACE |
3136 | ONE("stack", S_IRUSR, proc_pid_stack), | 3139 | ONE("stack", S_IRUSR, proc_pid_stack), |
3137 | #endif | 3140 | #endif |
3138 | #ifdef CONFIG_SCHEDSTATS | 3141 | #ifdef CONFIG_SCHED_INFO |
3139 | ONE("schedstat", S_IRUGO, proc_pid_schedstat), | 3142 | ONE("schedstat", S_IRUGO, proc_pid_schedstat), |
3140 | #endif | 3143 | #endif |
3141 | #ifdef CONFIG_LATENCYTOP | 3144 | #ifdef CONFIG_LATENCYTOP |