summaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorJay Lan <jlan@engr.sgi.com>2006-09-30 23:28:58 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-01 00:39:29 -0700
commit9acc1853519a0473620d424105f9d49ea5b4e62e (patch)
treefd4d03bf82ea604e71f8e805e557023226c2dd42 /include/linux
parentf3cef7a99469afc159fec3a61b42dc7ca5b6824f (diff)
[PATCH] csa: Extended system accounting over taskstats
Add extended system accounting handling over taskstats interface. A CONFIG_TASK_XACCT flag is created to enable the extended accounting code. Signed-off-by: Jay Lan <jlan@sgi.com> Cc: Shailabh Nagar <nagar@watson.ibm.com> Cc: Balbir Singh <balbir@in.ibm.com> Cc: Jes Sorensen <jes@sgi.com> Cc: Chris Sturtivant <csturtiv@sgi.com> Cc: Tony Ernst <tee@sgi.com> Cc: Guillaume Thouvenin <guillaume.thouvenin@bull.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/taskstats.h11
-rw-r--r--include/linux/tsacct_kern.h9
2 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/taskstats.h b/include/linux/taskstats.h
index af93a63a509..3d2c304886b 100644
--- a/include/linux/taskstats.h
+++ b/include/linux/taskstats.h
@@ -107,6 +107,17 @@ struct taskstats {
__u64 ac_minflt; /* Minor Page Fault */
__u64 ac_majflt; /* Major Page Fault */
/* Basic Accounting Fields end */
+
+ /* Extended accounting fields start */
+ __u64 acct_rss_mem1; /* accumulated rss usage */
+ __u64 acct_vm_mem1; /* accumulated virtual memory usage */
+ __u64 hiwater_rss; /* High-watermark of RSS usage */
+ __u64 hiwater_vm; /* High-water virtual memory usage */
+ __u64 read_char; /* bytes read */
+ __u64 write_char; /* bytes written */
+ __u64 read_syscalls; /* read syscalls */
+ __u64 write_syscalls; /* write syscalls */
+ /* Extended accounting fields end */
};
diff --git a/include/linux/tsacct_kern.h b/include/linux/tsacct_kern.h
index 7e8196a0211..74102dcae67 100644
--- a/include/linux/tsacct_kern.h
+++ b/include/linux/tsacct_kern.h
@@ -16,4 +16,13 @@ static inline void bacct_add_tsk(struct taskstats *stats, struct task_struct *ts
{}
#endif /* CONFIG_TASKSTATS */
+#ifdef CONFIG_TASK_XACCT
+extern void xacct_add_tsk(struct taskstats *stats, struct task_struct *p);
+#else
+static inline void xacct_add_tsk(struct taskstats *stats, struct task_struct *p)
+{}
+#endif /* CONFIG_TASK_XACCT */
+
#endif
+
+