Add a global, clocks_running, which tells us when timeout/ticks based clocks
authorMatthew Dillon <dillon@dragonflybsd.org>
Mon, 2 Aug 2004 19:36:27 +0000 (19:36 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Mon, 2 Aug 2004 19:36:27 +0000 (19:36 +0000)
can be used.

sys/kern/kern_clock.c
sys/sys/systm.h

index 29723b2..d12da63 100644 (file)
@@ -70,7 +70,7 @@
  *
  *     @(#)kern_clock.c        8.5 (Berkeley) 1/21/94
  * $FreeBSD: src/sys/kern/kern_clock.c,v 1.105.2.10 2002/10/17 13:19:40 maxim Exp $
- * $DragonFly: src/sys/kern/kern_clock.c,v 1.21 2004/07/16 05:51:09 dillon Exp $
+ * $DragonFly: src/sys/kern/kern_clock.c,v 1.22 2004/08/02 19:36:26 dillon Exp $
  */
 
 #include "opt_ntp.h"
@@ -152,6 +152,7 @@ static void statclock(systimer_t info, struct intrframe *frame);
 static void schedclock(systimer_t info, struct intrframe *frame);
 
 int    ticks;                  /* system master ticks at hz */
+int    clocks_running;         /* tsleep/timeout clocks operational */
 int64_t        nsec_adj;               /* ntpd per-tick adjustment in nsec << 32 */
 int64_t        nsec_acc;               /* accumulator */
 
@@ -168,6 +169,7 @@ initclocks(void *dummy)
 #endif
        /*psratio = profhz / stathz;*/
        initclocks_pcpu();
+       clocks_running = 1;
 }
 
 /*
index 3f95cdc..2f1ee89 100644 (file)
@@ -37,7 +37,7 @@
  *
  *     @(#)systm.h     8.7 (Berkeley) 3/29/95
  * $FreeBSD: src/sys/sys/systm.h,v 1.111.2.18 2002/12/17 18:04:02 sam Exp $
- * $DragonFly: src/sys/sys/systm.h,v 1.19 2004/05/19 22:53:03 dillon Exp $
+ * $DragonFly: src/sys/sys/systm.h,v 1.20 2004/08/02 19:36:27 dillon Exp $
  */
 
 #ifndef _SYS_SYSTM_H_
@@ -87,6 +87,7 @@ extern int ncpus;             /* total number of cpus (real, hyper, virtual)*/
 extern int ncpus2;             /* ncpus rounded down to power of 2 */
 extern int ncpus2_shift;       /* log base 2 of ncpus2 */
 extern int ncpus2_mask;                /* ncpus2 - 1 */
+extern int clocks_running;     /* timing/timeout subsystem is operational */
 
 #ifdef INVARIANTS              /* The option is always available */
 #define        KASSERT(exp,msg)        do { if (!(exp)) panic msg; } while (0)