]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/kern/sync_sema.h
xnu-2050.22.13.tar.gz
[apple/xnu.git] / osfmk / kern / sync_sema.h
index 8406b0cbdd014d7ccb2d7835dd44e49fcdeff520..1da09b0f3705c256bda3598fefa067891601cd07 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
@@ -53,7 +53,7 @@ typedef struct semaphore {
        struct wait_queue wait_queue; /* queue of blocked threads & lock     */
        task_t            owner;      /* task that owns semaphore            */
        ipc_port_t        port;       /* semaphore port                      */
-       int               ref_count;  /* reference count                     */
+       uint32_t          ref_count;  /* reference count                     */
        int               count;      /* current count value                 */
        boolean_t         active;     /* active status                       */
 } Semaphore;
@@ -61,7 +61,7 @@ typedef struct semaphore {
 #define semaphore_lock(semaphore)   wait_queue_lock(&(semaphore)->wait_queue)
 #define semaphore_unlock(semaphore) wait_queue_unlock(&(semaphore)->wait_queue)
 
-extern void semaphore_init(void);
+extern void semaphore_init(void) __attribute__((section("__TEXT, initcode")));
 
 extern void            semaphore_reference     (semaphore_t semaphore);
 extern void            semaphore_dereference   (semaphore_t semaphore);