diff options
author | Shailabh Nagar <nagar@watson.ibm.com> | 2006-07-14 00:24:36 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-14 21:53:56 -0700 |
commit | ca74e92b4698276b6696f15a801759f50944f387 (patch) | |
tree | 26f0de66d8207608e07ee22389bfc173e773c0c2 /include/linux/time.h | |
parent | e8f4d97e1b58b50ad6449bb2d35e6632c0236abd (diff) | |
download | linux-3.10-ca74e92b4698276b6696f15a801759f50944f387.tar.gz linux-3.10-ca74e92b4698276b6696f15a801759f50944f387.tar.bz2 linux-3.10-ca74e92b4698276b6696f15a801759f50944f387.zip |
[PATCH] per-task-delay-accounting: setup
Initialization code related to collection of per-task "delay" statistics which
measure how long it had to wait for cpu, sync block io, swapping etc. The
collection of statistics and the interface are in other patches. This patch
sets up the data structures and allows the statistics collection to be
disabled through a kernel boot parameter.
Signed-off-by: Shailabh Nagar <nagar@watson.ibm.com>
Signed-off-by: Balbir Singh <balbir@in.ibm.com>
Cc: Jes Sorensen <jes@sgi.com>
Cc: Peter Chubb <peterc@gelato.unsw.edu.au>
Cc: Erich Focht <efocht@ess.nec.de>
Cc: Levent Serinol <lserinol@gmail.com>
Cc: Jay Lan <jlan@engr.sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/time.h')
-rw-r--r-- | include/linux/time.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/time.h b/include/linux/time.h index c05f8bb9a32..a5b739967b7 100644 --- a/include/linux/time.h +++ b/include/linux/time.h @@ -71,6 +71,18 @@ extern unsigned long mktime(const unsigned int year, const unsigned int mon, extern void set_normalized_timespec(struct timespec *ts, time_t sec, long nsec); /* + * sub = lhs - rhs, in normalized form + */ +static inline struct timespec timespec_sub(struct timespec lhs, + struct timespec rhs) +{ + struct timespec ts_delta; + set_normalized_timespec(&ts_delta, lhs.tv_sec - rhs.tv_sec, + lhs.tv_nsec - rhs.tv_nsec); + return ts_delta; +} + +/* * Returns true if the timespec is norm, false if denorm: */ #define timespec_valid(ts) \ |