diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-04-14 09:36:29 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-04-14 09:37:27 -0400 |
commit | ab96e798cbd562a53edd802272e49a5100b29efb (patch) | |
tree | 4b3558bc97f5c2fc5c63789431deef79534e3bd3 /arch/s390/kernel/vtime.c | |
parent | b6112ccbff5ec580d46b584ecc3c3a773b830da2 (diff) |
[S390] boot cputime accounting
Start the cpu time accounting very early to catch the cpu time spent
for the initial kernel setup. To make the output of /proc/uptime
match the sum of all cpu accounting values of the boot cpu reset
xtime and wall_to_monotonic to sane values based on the TOD clock.
The values set by timekeeping_init are off by up to a second.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/vtime.c')
-rw-r--r-- | arch/s390/kernel/vtime.c | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c index c0870a61f90f..38ea92ff04f9 100644 --- a/arch/s390/kernel/vtime.c +++ b/arch/s390/kernel/vtime.c | |||
@@ -527,16 +527,8 @@ EXPORT_SYMBOL(del_virt_timer); | |||
527 | */ | 527 | */ |
528 | void init_cpu_vtimer(void) | 528 | void init_cpu_vtimer(void) |
529 | { | 529 | { |
530 | struct thread_info *ti = current_thread_info(); | ||
531 | struct vtimer_queue *vq; | 530 | struct vtimer_queue *vq; |
532 | 531 | ||
533 | S390_lowcore.user_timer = ti->user_timer; | ||
534 | S390_lowcore.system_timer = ti->system_timer; | ||
535 | |||
536 | /* kick the virtual timer */ | ||
537 | asm volatile ("STCK %0" : "=m" (S390_lowcore.last_update_clock)); | ||
538 | asm volatile ("STPT %0" : "=m" (S390_lowcore.last_update_timer)); | ||
539 | |||
540 | /* initialize per cpu vtimer structure */ | 532 | /* initialize per cpu vtimer structure */ |
541 | vq = &__get_cpu_var(virt_cpu_timer); | 533 | vq = &__get_cpu_var(virt_cpu_timer); |
542 | INIT_LIST_HEAD(&vq->list); | 534 | INIT_LIST_HEAD(&vq->list); |