/seL4-test-master/kernel/src/arch/x86/kernel/ |
H A D | thread.c | 7 #include <kernel/thread.h> 8 #include <arch/kernel/thread.h>
|
/seL4-test-master/kernel/src/arch/arm/kernel/ |
H A D | thread.c | 7 #include <kernel/thread.h>
|
/seL4-test-master/projects/sel4test/apps/sel4test-tests/src/tests/ |
H A D | threads.c | 24 helper_thread_t thread; local 27 create_helper_thread(env, &thread); 30 error = api_tcb_configure(get_helper_tcb(&thread), 0, seL4_CapNull, 35 cleanup_helper(env, &thread); 43 helper_thread_t thread; local 46 create_helper_thread(env, &thread); 49 error = api_tcb_set_space(get_helper_tcb(&thread), 0, seL4_CapNull, 53 cleanup_helper(env, &thread);
|
H A D | regressions.c | 32 /* An endpoint for the helper thread and the main thread to synchronise on. */ 35 /* This function provides a wrapper around seL4_Send to the parent thread. It 76 helper_thread_t thread; local 82 /* Create a thread without starting it. Most of these arguments are 85 create_helper_thread(env, &thread); 86 shared_endpoint = thread.local_endpoint.cptr; 196 result = seL4_TCB_WriteRegisters(get_helper_tcb(&thread), true, 0 /* ignored */, 200 /* If we've successfully started the thread, block until it's checked 203 info = api_recv(shared_endpoint, &badge, get_helper_reply(&thread)); 287 helper_thread_t thread; local 368 helper_thread_t thread; local [all...] |
H A D | domains.cxx | 84 helper_thread_t thread[CONFIG_NUM_DOMAINS]; local 87 create_helper_thread(env, &thread[i]); 88 set_helper_priority(env, &thread[i], 64); 89 error = seL4_DomainSet_Set(env->domain, (seL4_Word)i, get_helper_tcb(&thread[i])); 94 start_helper(env, &thread[i], (helper_fn_t) func, i, (seL4_Word) env, 0, 0); 99 error = seL4_DomainSet_Set(env->domain, CONFIG_NUM_DOMAINS - 1, get_helper_tcb(&thread[0])); 104 wait_for_helper(&thread[i]); 105 cleanup_helper(env, &thread[i]); 112 * within each, a single thread printing. For example: 125 /* The output of this test differs from that of DOMAINS0004 in that the thread [all...] |
/seL4-test-master/kernel/src/object/ |
H A D | endpoint.c | 10 #include <kernel/thread.h> 27 bool_t canGrant, bool_t canGrantReply, bool_t canDonate, tcb_t *thread, endpoint_t *epptr) 30 bool_t canGrant, bool_t canGrantReply, tcb_t *thread, endpoint_t *epptr) 39 /* Set thread state to BlockedOnSend */ 40 thread_state_ptr_set_tsType(&thread->tcbState, 43 &thread->tcbState, EP_REF(epptr)); 45 &thread->tcbState, badge); 47 &thread->tcbState, canGrant); 49 &thread->tcbState, canGrantReply); 51 &thread 26 sendIPC(bool_t blocking, bool_t do_call, word_t badge, bool_t canGrant, bool_t canGrantReply, bool_t canDonate, tcb_t *thread, endpoint_t *epptr) argument 127 receiveIPC(tcb_t *thread, cap_t cap, bool_t isBlocking, cap_t replyCap) argument 268 replyFromKernel_error(tcb_t *thread) argument 289 replyFromKernel_success_empty(tcb_t *thread) argument 372 tcb_t *thread = TCB_PTR(endpoint_ptr_get_epQueue_head(epptr)); local 412 tcb_t *thread, *next; local 464 reorderEP(endpoint_t *epptr, tcb_t *thread) argument [all...] |
H A D | notification.c | 10 #include <kernel/thread.h> 52 * current thread was deleted in a long-running deletion 81 /* Check if we are bound and that thread is waiting for a message */ 84 /* Send and start thread running */ 109 /* In particular, this path is taken when a thread 111 * would also trigger this path. I.e, a thread 137 /* set the thread state to idle if the queue is empty */ 162 void receiveSignal(tcb_t *thread, cap_t cap, bool_t isBlocking) argument 174 /* Block thread on notification object */ 175 thread_state_ptr_set_tsType(&thread 212 tcb_t *thread = TCB_PTR(notification_ptr_get_ntfnQueue_head(ntfnPtr)); local 301 reorderNTFN(notification_t *ntfnPtr, tcb_t *thread) argument [all...] |
/seL4-test-master/kernel/include/machine/ |
H A D | fpu.h | 16 /* Perform any actions required for the deletion of the given thread. */ 17 void fpuThreadDelete(tcb_t *thread); 27 /* Returns whether or not the passed thread is using the current active fpu state */ 28 static inline bool_t nativeThreadUsingFPU(tcb_t *thread) argument 30 return &thread->tcbArch.tcbContext.fpuState == 31 NODE_STATE_ON_CORE(ksActiveFPUState, thread->tcbAffinity); 34 static inline void FORCE_INLINE lazyFPURestore(tcb_t *thread) argument 44 if (likely(nativeThreadUsingFPU(thread))) {
|
H A D | registerset.h | 29 static inline void setRegister(tcb_t *thread, register_t reg, word_t w) argument 31 thread->tcbArch.tcbContext.registers[reg] = w; 34 static inline word_t PURE getRegister(tcb_t *thread, register_t reg) argument 36 return thread->tcbArch.tcbContext.registers[reg];
|
/seL4-test-master/projects/sel4test/apps/sel4test-tests/src/ |
H A D | helpers.c | 49 /* Determine whether a given slot in the init thread's CSpace is empty by 194 void create_helper_process_custom_asid(env_t env, helper_thread_t *thread, seL4_CPtr asid) argument 198 error = vka_alloc_endpoint(&env->vka, &thread->local_endpoint); 201 thread->is_process = true; 210 error = sel4utils_configure_process_custom(&thread->process, &env->vka, &env->vspace, 215 memcpy(thread->regions, env->regions, sizeof(sel4utils_elf_region_t) * env->num_regions); 216 thread->num_regions = env->num_regions; 220 error = sel4utils_bootstrap_clone_into_vspace(&env->vspace, &thread->process.vspace, thread->regions[i].reservation); 224 thread 228 create_helper_process(env_t env, helper_thread_t *thread) argument 270 start_helper(env_t env, helper_thread_t *thread, helper_fn_t entry_point, seL4_Word arg0, seL4_Word arg1, seL4_Word arg2, seL4_Word arg3) argument 321 cleanup_helper(env_t env, helper_thread_t *thread) argument 340 create_helper_thread(env_t env, helper_thread_t *thread) argument 345 create_helper_thread_custom_stack(env_t env, helper_thread_t *thread, size_t stack_pages) argument 363 wait_for_helper(helper_thread_t *thread) argument 371 set_helper_priority(env_t env, helper_thread_t *thread, seL4_Word prio) argument 378 set_helper_mcp(env_t env, helper_thread_t *thread, seL4_Word mcp) argument 385 set_helper_affinity(UNUSED env_t env, helper_thread_t *thread, seL4_Word affinity) argument 399 get_helper_tcb(helper_thread_t *thread) argument 404 get_helper_reply(helper_thread_t *thread) argument 409 get_helper_sched_context(helper_thread_t *thread) argument 414 get_helper_ipc_buffer_addr(helper_thread_t *thread) argument 419 get_helper_initial_stack_pointer(helper_thread_t *thread) argument 515 set_helper_sched_params(UNUSED env_t env, UNUSED helper_thread_t *thread, UNUSED uint64_t budget, UNUSED uint64_t period, UNUSED seL4_Word badge) argument 569 set_helper_tfep(env_t env, helper_thread_t *thread, seL4_CPtr tfep) argument [all...] |
H A D | helpers.h | 16 #include <sel4utils/thread.h> 45 sel4utils_thread_t thread; member in struct:helper_thread 57 /* Helper thread/process functions */ 60 void create_helper_thread(env_t env, helper_thread_t *thread); 62 void create_helper_thread_custom_stack(env_t env, helper_thread_t *thread, size_t stack_pages); 66 void create_helper_process(env_t env, helper_thread_t *thread); 67 void create_helper_process_custom_asid(env_t env, helper_thread_t *thread, seL4_CPtr asid); 68 /* create and start a passive thread */ 71 /* start an existing (created but not running ) passive thread */ 75 void set_helper_priority(env_t env, helper_thread_t *thread, seL4_Wor [all...] |
/seL4-test-master/kernel/include/64/mode/api/ |
H A D | ipc_buffer.h | 17 static inline word_t mode_setTimeArg(word_t i, time_t time, word_t *buffer, tcb_t *thread) argument 19 return setMR(thread, buffer, i, time);
|
/seL4-test-master/kernel/include/object/ |
H A D | endpoint.h | 24 bool_t canGrant, bool_t canGrantReply, bool_t canDonate, tcb_t *thread, 26 void receiveIPC(tcb_t *thread, cap_t cap, bool_t isBlocking, cap_t replyCPtr); 27 void reorderEP(endpoint_t *epptr, tcb_t *thread); 30 bool_t canGrant, bool_t canGrantReply, tcb_t *thread, 32 void receiveIPC(tcb_t *thread, cap_t cap, bool_t isBlocking); 37 void replyFromKernel_error(tcb_t *thread); 38 void replyFromKernel_success_empty(tcb_t *thread);
|
/seL4-test-master/projects/seL4_libs/libsel4utils/include/sel4utils/ |
H A D | thread.h | 15 * Provides basic thread configuration/starting/cleanup functions. 56 sel4utils_thread_t *thread; member in struct:sel4utils_checkpoint 64 * Configure a thread, allocating any resources required. The thread will start at priority 0. 66 * If CONFIG_RT is enabled, the thread will not have a scheduling context, so it will not be able to run. 69 * @param parent vspace structure of the thread calling this function, used for temporary mappings 72 * @param cspace the root of the cspace to start the thread in 90 * Start a thread, allocating any resources required. 91 * The third argument to the thread (in r2 for arm, on stack for ia32) will be the 94 * @param thread threa 225 sel4utils_get_tcb(sel4utils_thread_t *thread) argument 230 sel4utils_suspend_thread(sel4utils_thread_t *thread) argument [all...] |
/seL4-test-master/kernel/src/arch/arm/object/ |
H A D | tcb.c | 26 void Arch_migrateTCB(tcb_t *thread) argument 29 /* check if thread own its current core FPU */ 30 if (nativeThreadUsingFPU(thread)) { 31 switchFpuOwner(NULL, thread->tcbAffinity);
|
/seL4-test-master/kernel/include/32/mode/api/ |
H A D | ipc_buffer.h | 18 static inline word_t mode_setTimeArg(word_t i, time_t time, word_t *buffer, tcb_t *thread) argument 20 setMR(thread, buffer, i, (uint32_t) time); 21 return setMR(thread, buffer, i + 1, (uint32_t)(time >> 32llu));
|
/seL4-test-master/kernel/src/arch/riscv/object/ |
H A D | tcb.c | 26 void Arch_migrateTCB(tcb_t *thread) argument 29 if (nativeThreadUsingFPU(thread)) { 30 switchFpuOwner(NULL, thread->tcbAffinity);
|
/seL4-test-master/kernel/src/arch/arm/machine/ |
H A D | hardware.c | 12 word_t PURE getRestartPC(tcb_t *thread) argument 14 return getRegister(thread, FaultIP); 17 void setNextPC(tcb_t *thread, word_t v) argument 19 setRegister(thread, NEXT_PC_REG, v);
|
/seL4-test-master/kernel/include/arch/riscv/arch/kernel/ |
H A D | thread.h | 17 static inline bool_t CONST Arch_getSanitiseRegisterInfo(tcb_t *thread) argument
|
/seL4-test-master/kernel/include/arch/arm/arch/32/mode/kernel/ |
H A D | thread.h | 37 static inline bool_t PURE Arch_getSanitiseRegisterInfo(tcb_t *thread) argument 40 return (thread->tcbArch.tcbVCPU != NULL);
|
/seL4-test-master/kernel/include/arch/arm/arch/64/mode/kernel/ |
H A D | thread.h | 28 static inline bool_t CONST Arch_getSanitiseRegisterInfo(tcb_t *thread) argument 31 return (thread->tcbArch.tcbVCPU != NULL);
|
/seL4-test-master/kernel/include/arch/arm/arch/kernel/ |
H A D | thread.h | 10 #include <mode/kernel/thread.h>
|
/seL4-test-master/projects/seL4_libs/libsel4utils/src/ |
H A D | thread.c | 28 #include <sel4utils/thread.h> 163 int sel4utils_start_thread(sel4utils_thread_t *thread, sel4utils_thread_entry_fn entry_point, argument 171 if (tls_size > thread->stack_size * PAGE_SIZE_4K / 8) { 172 ZF_LOGE("TLS would use more than 1/8th of the application stack %zu/%zu", tls_size, thread->stack_size); 175 uintptr_t tls_base = (uintptr_t)thread->initial_stack_pointer - tls_size; 177 seL4_IPCBuffer *ipc_buffer_addr = (void *)thread->ipc_buffer_addr; 183 (void *) thread->ipc_buffer_addr, 190 error = seL4_TCB_WriteRegisters(thread->tcb.cptr, false, 0, context_size, &context); 195 error = seL4_TCB_SetTLSBase(thread->tcb.cptr, tp); 201 return seL4_TCB_Resume(thread 206 sel4utils_clean_up_thread(vka_t *vka, vspace_t *alloc, sel4utils_thread_t *thread) argument 321 sel4utils_checkpoint_thread(sel4utils_thread_t *thread, sel4utils_checkpoint_t *checkpoint, bool suspend) argument 390 sel4utils_set_sched_affinity(sel4utils_thread_t *thread, sched_params_t params) argument [all...] |
/seL4-test-master/projects/musllibc/src/thread/ |
H A D | pthread_setname_np.c | 9 int pthread_setname_np(pthread_t thread, const char *name) argument 17 if (thread == pthread_self()) 20 snprintf(f, sizeof f, "/proc/self/task/%d/comm", thread->tid);
|
/seL4-test-master/kernel/src/machine/ |
H A D | fpu.c | 14 /* Switch the owner of the FPU to the given thread on local core. */ 60 /* Prepare for the deletion of the given thread. */ 61 void fpuThreadDelete(tcb_t *thread) argument 63 /* If the thread being deleted currently owns the FPU, switch away from it 65 if (nativeThreadUsingFPU(thread)) { 66 switchFpuOwner(NULL, SMP_TERNARY(thread->tcbAffinity, 0));
|