summaryrefslogtreecommitdiffstats
path: root/arch/s390/include/asm/system.h
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2008-12-31 15:11:39 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2008-12-31 15:11:47 +0100
commitaa5e97ce4bbc9d5daeec16b1d15bb3f6b7b4f4d4 (patch)
tree6bf29daaaca165108bcafa68105d18e64ef01ea2 /arch/s390/include/asm/system.h
parent[PATCH] idle cputime accounting (diff)
downloadlinux-aa5e97ce4bbc9d5daeec16b1d15bb3f6b7b4f4d4.tar.xz
linux-aa5e97ce4bbc9d5daeec16b1d15bb3f6b7b4f4d4.zip
[PATCH] improve precision of process accounting.
The unit of the cputime accouting values that are stored per process is currently a microsecond. The CPU timer has a maximum granularity of 2**-12 microseconds. There is no benefit in storing the per process values in the lesser precision and there is the disadvantage that the backend has to do the rounding to microseconds. The better solution is to use the maximum granularity of the CPU timer as cputime unit. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/system.h')
-rw-r--r--arch/s390/include/asm/system.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/s390/include/asm/system.h b/arch/s390/include/asm/system.h
index 024ef42ed6d7..3a8b26eb1f2e 100644
--- a/arch/s390/include/asm/system.h
+++ b/arch/s390/include/asm/system.h
@@ -99,7 +99,7 @@ static inline void restore_access_regs(unsigned int *acrs)
prev = __switch_to(prev,next); \
} while (0)
-extern void account_vtime(struct task_struct *);
+extern void account_vtime(struct task_struct *, struct task_struct *);
extern void account_tick_vtime(struct task_struct *);
extern void account_system_vtime(struct task_struct *);
@@ -121,7 +121,7 @@ static inline void cmma_init(void) { }
#define finish_arch_switch(prev) do { \
set_fs(current->thread.mm_segment); \
- account_vtime(prev); \
+ account_vtime(prev, current); \
} while (0)
#define nop() asm volatile("nop")