diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/kernel_stat.h | 2 | ||||
-rw-r--r-- | include/linux/sched.h | 2 | ||||
-rw-r--r-- | include/linux/taskstats.h | 11 |
3 files changed, 12 insertions, 3 deletions
diff --git a/include/linux/kernel_stat.h b/include/linux/kernel_stat.h index 12bf44f083f5..e8ffce898bf9 100644 --- a/include/linux/kernel_stat.h +++ b/include/linux/kernel_stat.h | |||
@@ -53,7 +53,9 @@ static inline int kstat_irqs(int irq) | |||
53 | } | 53 | } |
54 | 54 | ||
55 | extern void account_user_time(struct task_struct *, cputime_t); | 55 | extern void account_user_time(struct task_struct *, cputime_t); |
56 | extern void account_user_time_scaled(struct task_struct *, cputime_t); | ||
56 | extern void account_system_time(struct task_struct *, int, cputime_t); | 57 | extern void account_system_time(struct task_struct *, int, cputime_t); |
58 | extern void account_system_time_scaled(struct task_struct *, cputime_t); | ||
57 | extern void account_steal_time(struct task_struct *, cputime_t); | 59 | extern void account_steal_time(struct task_struct *, cputime_t); |
58 | 60 | ||
59 | #endif /* _LINUX_KERNEL_STAT_H */ | 61 | #endif /* _LINUX_KERNEL_STAT_H */ |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 269b234609b8..7accc04e23ab 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -991,7 +991,7 @@ struct task_struct { | |||
991 | int __user *clear_child_tid; /* CLONE_CHILD_CLEARTID */ | 991 | int __user *clear_child_tid; /* CLONE_CHILD_CLEARTID */ |
992 | 992 | ||
993 | unsigned int rt_priority; | 993 | unsigned int rt_priority; |
994 | cputime_t utime, stime; | 994 | cputime_t utime, stime, utimescaled, stimescaled; |
995 | cputime_t gtime; | 995 | cputime_t gtime; |
996 | unsigned long nvcsw, nivcsw; /* context switch counts */ | 996 | unsigned long nvcsw, nivcsw; /* context switch counts */ |
997 | struct timespec start_time; /* monotonic time */ | 997 | struct timespec start_time; /* monotonic time */ |
diff --git a/include/linux/taskstats.h b/include/linux/taskstats.h index dce1ed204972..92bfd1c153fb 100644 --- a/include/linux/taskstats.h +++ b/include/linux/taskstats.h | |||
@@ -31,7 +31,7 @@ | |||
31 | */ | 31 | */ |
32 | 32 | ||
33 | 33 | ||
34 | #define TASKSTATS_VERSION 5 | 34 | #define TASKSTATS_VERSION 6 |
35 | #define TS_COMM_LEN 32 /* should be >= TASK_COMM_LEN | 35 | #define TS_COMM_LEN 32 /* should be >= TASK_COMM_LEN |
36 | * in linux/sched.h */ | 36 | * in linux/sched.h */ |
37 | 37 | ||
@@ -85,9 +85,12 @@ struct taskstats { | |||
85 | * On some architectures, value will adjust for cpu time stolen | 85 | * On some architectures, value will adjust for cpu time stolen |
86 | * from the kernel in involuntary waits due to virtualization. | 86 | * from the kernel in involuntary waits due to virtualization. |
87 | * Value is cumulative, in nanoseconds, without a corresponding count | 87 | * Value is cumulative, in nanoseconds, without a corresponding count |
88 | * and wraps around to zero silently on overflow | 88 | * and wraps around to zero silently on overflow. The |
89 | * _scaled_ version accounts for cpus which can scale the | ||
90 | * number of instructions executed each cycle. | ||
89 | */ | 91 | */ |
90 | __u64 cpu_run_real_total; | 92 | __u64 cpu_run_real_total; |
93 | __u64 cpu_scaled_run_real_total; | ||
91 | 94 | ||
92 | /* cpu "virtual" running time | 95 | /* cpu "virtual" running time |
93 | * Uses time intervals seen by the kernel i.e. no adjustment | 96 | * Uses time intervals seen by the kernel i.e. no adjustment |
@@ -142,6 +145,10 @@ struct taskstats { | |||
142 | __u64 write_char; /* bytes written */ | 145 | __u64 write_char; /* bytes written */ |
143 | __u64 read_syscalls; /* read syscalls */ | 146 | __u64 read_syscalls; /* read syscalls */ |
144 | __u64 write_syscalls; /* write syscalls */ | 147 | __u64 write_syscalls; /* write syscalls */ |
148 | |||
149 | /* time accounting for SMT machines */ | ||
150 | __u64 ac_utimescaled; /* utime scaled on frequency etc */ | ||
151 | __u64 ac_stimescaled; /* stime scaled on frequency etc */ | ||
145 | /* Extended accounting fields end */ | 152 | /* Extended accounting fields end */ |
146 | 153 | ||
147 | #define TASKSTATS_HAS_IO_ACCOUNTING | 154 | #define TASKSTATS_HAS_IO_ACCOUNTING |