]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/kern/clock_oldops.c
xnu-3789.1.32.tar.gz
[apple/xnu.git] / osfmk / kern / clock_oldops.c
index 9870369543803dbb19c19198dd5f4ff347e6f49b..a3debc0d97f4d299053734b99307811ebd577640 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000-2005 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2008 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
@@ -39,7 +39,6 @@
 
 #include <mach/mach_types.h>
 
-#include <kern/lock.h>
 #include <kern/host.h>
 #include <kern/spl.h>
 #include <kern/sched_prim.h>
@@ -128,8 +127,6 @@ static kern_return_t        clock_sleep_internal(
                                                        sleep_type_t            sleep_type,
                                                        mach_timespec_t         *sleep_time);
 
-int            rtclock_config(void);
-
 int            rtclock_init(void);
 
 kern_return_t  rtclock_gettime(
@@ -141,7 +138,7 @@ kern_return_t       rtclock_getattr(
        mach_msg_type_number_t  *count);
 
 struct clock_ops sysclk_ops = {
-       rtclock_config,                 rtclock_init,
+       NULL,                   rtclock_init,
        rtclock_gettime,
        rtclock_getattr,
 };
@@ -155,7 +152,7 @@ kern_return_t       calend_getattr(
        mach_msg_type_number_t  *count);
 
 struct clock_ops calend_ops = {
-       0,                                      0,
+       NULL, NULL,
        calend_gettime,
        calend_getattr,
 };
@@ -175,7 +172,7 @@ void
 clock_oldconfig(void)
 {
        clock_t                 clock;
-       register int    i;
+       int     i;
 
        simple_lock_init(&alarm_lock, 0);
        thread_call_setup(&alarm_done_call, (thread_call_func_t)alarm_done, NULL);
@@ -188,7 +185,7 @@ clock_oldconfig(void)
                clock = &clock_list[i];
                if (clock->cl_ops && clock->cl_ops->c_config) {
                        if ((*clock->cl_ops->c_config)() == 0)
-                               clock->cl_ops = 0;
+                               clock->cl_ops = NULL;
                }
        }
 
@@ -200,7 +197,7 @@ void
 clock_oldinit(void)
 {
        clock_t                 clock;
-       register int    i;
+       int     i;
 
        /*
         * Initialize basic clock structures.
@@ -219,7 +216,7 @@ void
 clock_service_create(void)
 {
        clock_t                 clock;
-       register int    i;
+       int     i;
 
        /*
         * Initialize ipc clock services.
@@ -298,7 +295,12 @@ kern_return_t
 rtclock_gettime(
        mach_timespec_t         *time)  /* OUT */
 {
-       clock_get_system_nanotime(&time->tv_sec, (uint32_t *)&time->tv_nsec);
+       clock_sec_t             secs;
+       clock_nsec_t    nsecs;
+
+       clock_get_system_nanotime(&secs, &nsecs);
+       time->tv_sec = (unsigned int)secs;
+       time->tv_nsec = nsecs;
 
        return (KERN_SUCCESS);
 }
@@ -307,7 +309,12 @@ kern_return_t
 calend_gettime(
        mach_timespec_t         *time)  /* OUT */
 {
-       clock_get_calendar_nanotime(&time->tv_sec, (uint32_t *)&time->tv_nsec);
+       clock_sec_t             secs;
+       clock_nsec_t    nsecs;
+
+       clock_get_calendar_nanotime(&secs, &nsecs);
+       time->tv_sec = (unsigned int)secs;
+       time->tv_nsec = nsecs;
 
        return (KERN_SUCCESS);
 }
@@ -613,8 +620,8 @@ static void
 alarm_expire(void)
 {
        clock_t                         clock;
-       register alarm_t        alrm1;
-       register alarm_t        alrm2;
+       alarm_t alrm1;
+       alarm_t alrm2;
        mach_timespec_t         clock_time;
        mach_timespec_t         *alarm_time;
        spl_t                           s;
@@ -645,7 +652,7 @@ alarm_expire(void)
                 * which issued the clock_sleep() call.
                 */
                if (alrm2->al_status == ALARM_SLEEP) {
-                       alrm2->al_next = 0;
+                       alrm2->al_next = NULL;
                        alrm2->al_status = ALARM_DONE;
                        alrm2->al_time = clock_time;
                        thread_wakeup((event_t)alrm2);
@@ -680,7 +687,7 @@ alarm_expire(void)
 static void
 alarm_done(void)
 {
-       register alarm_t        alrm;
+       alarm_t alrm;
        kern_return_t           code;
        spl_t                           s;
 
@@ -719,7 +726,7 @@ static void
 post_alarm(
        alarm_t                         alarm)
 {
-       register alarm_t        alrm1, alrm2;
+       alarm_t alrm1, alrm2;
        mach_timespec_t         *alarm_time;
        mach_timespec_t         *queue_time;
 
@@ -756,7 +763,7 @@ set_alarm(
        uint64_t        abstime;
 
        nanotime_to_absolutetime(alarm_time->tv_sec, alarm_time->tv_nsec, &abstime);
-       timer_call_enter(&alarm_expire_timer, abstime);
+       timer_call_enter_with_leeway(&alarm_expire_timer, NULL, abstime, 0, TIMER_CALL_USER_NORMAL, FALSE);
 }
 
 /*
@@ -785,6 +792,8 @@ check_time(
        return ((result >= 0)? result: 0);
 }
 
+#ifndef        __LP64__
+
 mach_timespec_t
 clock_get_system_value(void)
 {
@@ -806,3 +815,5 @@ clock_get_calendar_value(void)
 
        return value;
 }
+
+#endif /* __LP64__ */