Searched refs:queue (Results 1 - 8 of 8) sorted by relevance

/seL4-mcs-10.1.1/src/object/
H A Dendpoint.c22 ep_ptr_set_queue(endpoint_t *epptr, tcb_queue_t queue) argument
24 endpoint_ptr_set_epQueue_head(epptr, (word_t)queue.head);
25 endpoint_ptr_set_epQueue_tail(epptr, (word_t)queue.end);
36 tcb_queue_t queue; local
52 /* Place calling thread in endpoint queue */
53 queue = ep_ptr_get_queue(epptr);
54 queue = tcbEPAppend(thread, queue);
56 ep_ptr_set_queue(epptr, queue);
61 tcb_queue_t queue; local
134 tcb_queue_t queue; local
161 tcb_queue_t queue; local
243 tcb_queue_t queue; local
321 tcb_queue_t queue = ep_ptr_get_queue(epptr); local
361 tcb_queue_t queue = ep_ptr_get_queue(epptr); local
[all...]
H A Dnotification.c123 /* Haskell error "WaitingNtfn Notification must have non-empty queue" */
130 /* set the thread state to idle if the queue is empty */
292 tcb_queue_t queue = ntfn_ptr_get_queue(ntfnPtr); local
293 queue = tcbEPDequeue(thread, queue);
294 queue = tcbEPAppend(thread, queue);
295 ntfn_ptr_set_queue(ntfnPtr, queue);
H A Dtcb.c86 /* Add TCB to the head of a scheduler queue */
94 tcb_queue_t queue; local
102 queue = NODE_STATE_ON_CORE(ksReadyQueues[idx], tcb->tcbAffinity);
104 if (!queue.end) { /* Empty list */
105 queue.end = tcb;
108 queue.head->tcbSchedPrev = tcb;
111 tcb->tcbSchedNext = queue.head;
112 queue.head = tcb;
114 NODE_STATE_ON_CORE(ksReadyQueues[idx], tcb->tcbAffinity) = queue;
120 /* Add TCB to the end of a scheduler queue */
128 tcb_queue_t queue; local
159 tcb_queue_t queue; local
226 tcbEPDequeue(tcb_t *tcb, tcb_queue_t queue) argument
[all...]
/seL4-mcs-10.1.1/include/object/
H A Dendpoint.h20 tcb_queue_t queue; local
22 queue.head = (tcb_t*)endpoint_ptr_get_epQueue_head(epptr);
23 queue.end = (tcb_t*)endpoint_ptr_get_epQueue_tail(epptr);
25 return queue;
H A Dtcb.h84 /* Add TCB into the priority ordered endpoint queue */
86 tcbEPAppend(tcb_t *tcb, tcb_queue_t queue) argument
88 /* start at the back of the queue as FIFO is the common case */
89 tcb_t *before = queue.end;
100 queue.head = tcb;
107 queue.end = tcb;
115 return queue;
118 tcb_queue_t tcbEPDequeue(tcb_t *tcb, tcb_queue_t queue);
/seL4-mcs-10.1.1/src/fastpath/
H A Dfastpath.c370 /* Place the thread in the endpoint queue */
376 /* Set head/tail of queue and endpoint state. */
381 /* Update queue. */
382 tcb_queue_t queue = tcbEPAppend(NODE_STATE(ksCurThread), ep_ptr_get_queue(ep_ptr)); local
383 endpoint_ptr_set_epQueue_head_np(ep_ptr, TCB_REF(queue.head));
384 endpoint_ptr_mset_epQueue_tail_state(ep_ptr, TCB_REF(queue.end), EPState_Recv);
/seL4-mcs-10.1.1/manual/parts/
H A Dipc.tex109 synchronous and blocking. An \obj{Endpoint} object may queue
112 system calls will wait in a queue for the first available receiver. Likewise, if
H A Dthreads.tex103 scheduling context is placed in a queue of threads waiting for more budget.
108 replenishment. Once the head budget is consumed, the thread is removed from the scheduling queue
133 replenishment queue. However, the scheduling overhead will be higher as the replenishment list is
150 suspending a thread, in that threads that are blocked waiting in an endpoint or notification queue
151 will remain in the queue and can still recieve messages and signals. However, the unbound thread

Completed in 84 milliseconds