X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/8f6c56a50524aa785f7e596d52dddfb331e18961..b0d623f7f2ae71ed96e60569f61f9a9a27016e80:/osfmk/kern/thread_call.h diff --git a/osfmk/kern/thread_call.h b/osfmk/kern/thread_call.h index de212f64d..aa38f0dda 100644 --- a/osfmk/kern/thread_call.h +++ b/osfmk/kern/thread_call.h @@ -1,6 +1,5 @@ /* - * Copyright (c) 1993-1995, 1999-2005 Apple Computer, Inc. - * All rights reserved. + * Copyright (c) 1993-1995, 1999-2008 Apple Inc. All rights reserved. * * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * @@ -46,45 +45,31 @@ typedef void (*thread_call_func_t)( thread_call_param_t param1); __BEGIN_DECLS -boolean_t -thread_call_enter( - thread_call_t call -); - -boolean_t -thread_call_enter1( - thread_call_t call, - thread_call_param_t param1 -); - -boolean_t -thread_call_enter_delayed( - thread_call_t call, - uint64_t deadline -); - -boolean_t -thread_call_enter1_delayed( - thread_call_t call, - thread_call_param_t param1, - uint64_t deadline -); - -boolean_t -thread_call_cancel( - thread_call_t call -); - -thread_call_t -thread_call_allocate( - thread_call_func_t func, - thread_call_param_t param0 -); - -boolean_t -thread_call_free( - thread_call_t call -); +extern boolean_t thread_call_enter( + thread_call_t call); + +extern boolean_t thread_call_enter1( + thread_call_t call, + thread_call_param_t param1); + +extern boolean_t thread_call_enter_delayed( + thread_call_t call, + uint64_t deadline); + +extern boolean_t thread_call_enter1_delayed( + thread_call_t call, + thread_call_param_t param1, + uint64_t deadline); + +extern boolean_t thread_call_cancel( + thread_call_t call); + +extern thread_call_t thread_call_allocate( + thread_call_func_t func, + thread_call_param_t param0); + +extern boolean_t thread_call_free( + thread_call_t call); __END_DECLS @@ -94,19 +79,12 @@ __END_DECLS typedef struct call_entry thread_call_data_t; -void -thread_call_initialize(void); - -void -thread_call_setup( - thread_call_t call, - thread_call_func_t func, - thread_call_param_t param0 -); +extern void thread_call_initialize(void); -void -call_thread_block(void), -call_thread_unblock(void); +extern void thread_call_setup( + thread_call_t call, + thread_call_func_t func, + thread_call_param_t param0); #endif /* MACH_KERNEL_PRIVATE */ @@ -118,35 +96,49 @@ __BEGIN_DECLS * Obsolete interfaces. */ -boolean_t -thread_call_is_delayed( - thread_call_t call, - uint64_t *deadline -); - -void -thread_call_func( - thread_call_func_t func, - thread_call_param_t param, - boolean_t unique_call -); - -void -thread_call_func_delayed( - thread_call_func_t func, - thread_call_param_t param, - uint64_t deadline -); - -boolean_t -thread_call_func_cancel( - thread_call_func_t func, - thread_call_param_t param, - boolean_t cancel_all -); +#ifndef __LP64__ + +extern boolean_t thread_call_is_delayed( + thread_call_t call, + uint64_t *deadline); + +extern void thread_call_func( + thread_call_func_t func, + thread_call_param_t param, + boolean_t unique_call); + +extern void thread_call_func_delayed( + thread_call_func_t func, + thread_call_param_t param, + uint64_t deadline); + +extern boolean_t thread_call_func_cancel( + thread_call_func_t func, + thread_call_param_t param, + boolean_t cancel_all); + +#else /* __LP64__ */ + +#ifdef XNU_KERNEL_PRIVATE + +extern void thread_call_func_delayed( + thread_call_func_t func, + thread_call_param_t param, + uint64_t deadline); + +extern boolean_t thread_call_func_cancel( + thread_call_func_t func, + thread_call_param_t param, + boolean_t cancel_all); + +#endif /* XNU_KERNEL_PRIVATE */ + +#endif /* __LP64__ */ #ifndef MACH_KERNEL_PRIVATE +#ifndef __LP64__ + #ifndef ABSOLUTETIME_SCALAR_TYPE #define thread_call_enter_delayed(a, b) \ @@ -163,6 +155,8 @@ thread_call_func_cancel( #endif /* ABSOLUTETIME_SCALAR_TYPE */ +#endif /* __LP64__ */ + #endif /* MACH_KERNEL_PRIVATE */ __END_DECLS