diff options
Diffstat (limited to 'usr/src/uts/common/os/clock.c')
-rw-r--r-- | usr/src/uts/common/os/clock.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/usr/src/uts/common/os/clock.c b/usr/src/uts/common/os/clock.c index 669c8d6886..290506962e 100644 --- a/usr/src/uts/common/os/clock.c +++ b/usr/src/uts/common/os/clock.c @@ -67,6 +67,7 @@ #include <sys/rctl.h> #include <sys/task.h> #include <sys/sdt.h> +#include <sys/ddi_timer.h> /* * for NTP support @@ -1045,6 +1046,18 @@ clock_init(void) mutex_enter(&cpu_lock); clock_cyclic = cyclic_add(&hdlr, &when); mutex_exit(&cpu_lock); + + /* + * cyclic_timer is dedicated to the ddi interface, which + * uses the same clock resolution as the system one. + */ + hdlr.cyh_func = (cyc_func_t)cyclic_timer; + hdlr.cyh_level = CY_LOCK_LEVEL; + hdlr.cyh_arg = NULL; + + mutex_enter(&cpu_lock); + clock_cyclic = cyclic_add(&hdlr, &when); + mutex_exit(&cpu_lock); } /* |