diff options
| author | sommerfeld <sommerfeld@NetBSD.org> | 2001-05-27 13:53:24 +0000 |
|---|---|---|
| committer | sommerfeld <sommerfeld@NetBSD.org> | 2001-05-27 13:53:24 +0000 |
| commit | 4aaf078a4a9014f3abc372b589eb44ae609bd320 (patch) | |
| tree | d539d09280487ca04dd4530d4454f0af29645280 /sys/arch/alpha/include | |
| parent | 1bca7091cc16a4b881d61af9f4867feb716c4e32 (diff) | |
Assorted microtime fixes (similar to fixes I made yesterday when
porting this code to i386mp branch):
- call microset() early on each cpu so that calls to microtime()
before the first clock interrupt don't return trash. this manifested
itself as garbage runtimes in "ps" for kernel threads.
- avoid races between hardclock updating "time" and microset on a
different cpu reading it by adding a "microset_time" global which is
initialized from "time" on the primary cpu.
- call microset every hz ticks, not every hz+1 (cosmetic)
Diffstat (limited to 'sys/arch/alpha/include')
| -rw-r--r-- | sys/arch/alpha/include/cpu.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/arch/alpha/include/cpu.h b/sys/arch/alpha/include/cpu.h index 63facd98a9c..cfe928fdece 100644 --- a/sys/arch/alpha/include/cpu.h +++ b/sys/arch/alpha/include/cpu.h @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.h,v 1.56 2001/04/28 06:10:50 thorpej Exp $ */ +/* $NetBSD: cpu.h,v 1.57 2001/05/27 13:53:25 sommerfeld Exp $ */ /*- * Copyright (c) 1998, 1999, 2000, 2001 The NetBSD Foundation, Inc. @@ -280,6 +280,8 @@ struct reg; struct rpb; struct trapframe; +extern struct timeval microset_time; + int badaddr(void *, size_t); void microset(struct cpu_info *, struct trapframe *); |
