/seL4-camkes-master/projects/seL4_libs/libsel4sync/include/sync/ |
H A D | bin_sem.h | 27 vka_object_t notification; member in struct:__anon33 31 /* Initialise an unmanaged binary semaphore with a notification object 33 * @param notification A notification object to use for the lock. 36 static inline int sync_bin_sem_init(sync_bin_sem_t *sem, seL4_CPtr notification, int value) argument 49 /* Check the cap actually is a notification. */ 50 assert(debug_cap_is_notification(notification)); 53 sem->notification.cptr = notification; 67 return sync_bin_sem_bare_wait(sem->notification [all...] |
H A D | condition_var.h | 26 vka_object_t notification; member in struct:__anon34 33 * @param notification A notification object to use for wake up. 35 static inline int sync_cv_init(sync_cv_t *cv, seL4_CPtr notification) argument 43 /* Check the cap actually is a notification. */ 44 assert(debug_cap_is_notification(notification)); 47 cv->notification.cptr = notification; 77 seL4_Wait(cv->notification.cptr, NULL); 92 seL4_Signal(cv->notification [all...] |
H A D | bin_sem_bare.h | 26 static inline int sync_bin_sem_bare_wait(seL4_CPtr notification, volatile int *value) { argument 34 seL4_Wait(notification, NULL); 43 static inline int sync_bin_sem_bare_post(seL4_CPtr notification, volatile int *value) { argument 50 seL4_Signal(notification);
|
H A D | recursive_mutex.h | 33 vka_object_t notification; member in struct:__anon558 38 /* Initialise an unmanaged recursive mutex with a notification object 40 * @param notification A notification object to use for the lock. 42 int sync_recursive_mutex_init(sync_recursive_mutex_t *mutex, seL4_CPtr notification); 55 * @param vka A VKA instance used to allocate a notification object. 61 * @param vka A VKA instance used to deallocate the notification object.
|
H A D | mutex.h | 21 /* Initialise an unmanaged mutex with a notification object 23 * @param notification A notification object to use for the lock. 25 static inline int sync_mutex_init(sync_mutex_t *mutex, seL4_CPtr notification) { argument 26 return sync_bin_sem_init(mutex, notification, 1); 44 * @param vka A VKA instance used to allocate a notification object. 52 * @param vka A VKA instance used to deallocate the notification object.
|
/seL4-camkes-master/projects/seL4_libs/libsel4sync/src/ |
H A D | recursive_mutex.c | 29 int sync_recursive_mutex_init(sync_recursive_mutex_t *mutex, seL4_CPtr notification) argument 36 /* Check the cap actually is a notification. */ 37 assert(debug_cap_is_notification(notification)); 40 mutex->notification.cptr = notification; 45 seL4_Signal(mutex->notification.cptr); 57 seL4_Wait(mutex->notification.cptr, NULL); 86 seL4_Signal(mutex->notification.cptr); 93 int error = vka_alloc_notification(vka, &(mutex->notification)); 98 return sync_recursive_mutex_init(mutex, mutex->notification [all...] |
/seL4-camkes-master/projects/camkes/apps/timeserver/components/Client/src/ |
H A D | client.c | 19 seL4_CPtr notification = timeout_notification(); local 27 seL4_Wait(notification, &badge); 35 seL4_Wait(notification, &badge); 41 seL4_Wait(notification, &badge);
|
/seL4-camkes-master/kernel/manual/parts/ |
H A D | notifications.tex | 15 \emph{notification word}. Such an object supports two operations: 30 notification word by bit-wise \texttt{or}-ing it with the \emph{badge} 31 of the invoked notification capability. It also unblocks the first 32 thread waiting on the notification (if any). As such, 36 to just waking up the first thread waiting on the notification (also see below). 39 select-style wait on the set of semaphores: If the notification word is 42 notification word to zero and returning to the invoker the previous 43 notification-word value. 46 no signals are pending (the notification word is 0) the call will return immediately 51 receives the notification [all...] |
H A D | objects.tex | 120 When an endpoint, notification or reply capability is invoked in this way, the 170 notification is pending, the caller will block until a message or 171 notification can be delivered. This system call works only on 198 signals pending on a notification object or messages pending on an endpoint 199 without blocking. This system call works only on endpoints and notification 247 notification is pending, the system call returns immediately.
|
H A D | threads.tex | 188 suspending a thread, in that threads that are blocked waiting in an endpoint or notification queue 243 Scheduling contexts can also be bound to notification objects using 246 a notification object with a passive thread blocked waiting on it, the passive thread will receive 247 the scheduling context that is bound to the notification object. The scheduling context is returned 248 when the thread blocks on the notification object. This feature allows for passive servers to use 249 notification binding (See \autoref{sec:notification-binding}). 251 Scheduling contexts can be unbound from all objects (notification objects and TCBs that are bound or 376 is called on a capability that does not exist, is not an endpoint or notification capability or does not have 655 on the \obj{TCB}s bound notification, th [all...] |
H A D | io.tex | 28 on this notification to 475 the IRQ notification can only deliver information via the badge, the owner
|
/seL4-camkes-master/projects/camkes-tool/libsel4camkes/src/ |
H A D | sync.c | 30 * to the allocator by the camkes runtime. It treates notification objects as 0 sized and with Read 34 ZF_LOGE("Failed to allocate notification object"); 61 ((sync_mutex_t *)mutex)->notification.cptr); 69 ((sync_mutex_t *)mutex)->notification.cptr); 78 ((sync_mutex_t *)mutex)->notification.cptr); 80 * We just release the Cap the notification object to the camkes allocator. 83 camkes_free(mtx->notification.cptr);
|
/seL4-camkes-master/kernel/include/ |
H A D | object.h | 11 #include <object/notification.h>
|
/seL4-camkes-master/projects/seL4_libs/libsel4platsupport/include/sel4platsupport/ |
H A D | timer.h | 76 * provided notification object with badges of BIT(seL4_BadgeBits - 1) - n where n is the index 86 * @param ntfn notification object capability for irqs to be delivered to. 91 seL4_CPtr notification, seL4_timer_t *timer); 98 seL4_CPtr notification, seL4_timer_t *timer); 110 * @param ntfn notification object capability for irqs to be delivered to. 122 * @param badge badge recieved on the notification object this timer was initialised with.
|
/seL4-camkes-master/kernel/include/object/ |
H A D | notification.h | 21 void reorderNTFN(notification_t *notification, tcb_t *thread);
|
/seL4-camkes-master/projects/camkes/apps/cakeml_tipc/components/client/ |
H A D | client.c | 149 seL4_CPtr notification = timeout_notification(); local 151 seL4_Wait(notification, &badge);
|
/seL4-camkes-master/projects/capdl/python-capdl-tool/capdl/ |
H A D | Allocator.py | 127 notification = None 128 if 'notification' in kwargs: 129 notification = kwargs['notification'] 130 del kwargs['notification'] 148 if notification is not None: 149 o.set_notification(notification)
|
/seL4-camkes-master/projects/global-components/components/SerialServer/src/ |
H A D | serial.c | 472 seL4_CPtr notification = timeout_notification(); local 474 seL4_Wait(notification, NULL);
|
/seL4-camkes-master/kernel/src/object/ |
H A D | interrupt.c | 16 #include <object/notification.h> 110 userError("IRQSetHandler: provided cap is not an notification capability.");
|
H A D | notification.c | 17 #include <object/notification.h> 112 * with a bound notification will not be awakened 113 * by signals on that bound notification if it is 174 /* Block thread on notification object */ 235 /* Haskell error "cancelSignal: notification object must be in a waiting" state */ 243 /* Make notification object idle */ 264 fail("tried to complete signal with inactive notification object");
|
H A D | endpoint.c | 14 #include <object/notification.h> 151 /* Check for anything waiting in the notification */ 157 /* If this is a blocking recv and we didn't have a pending notification, 158 * then if we are running on an SC from a bound notification, then we
|
H A D | objecttype.c | 16 #include <object/notification.h> 670 userError("Attempted to invoke a read-only notification cap #%lu.",
|
/seL4-camkes-master/projects/seL4_libs/libsel4vka/include/vka/ |
H A D | object.h | 266 LEAKY(notification)
|