HelenOS sources
task 75 boot/generic/src/payload.c void (*clear_cache)(void *, size_t), task_t *task)
task 114 boot/generic/src/payload.c if (task) {
task 115 boot/generic/src/payload.c task->addr = (void *) actual_ustart;
task 116 boot/generic/src/payload.c task->size = unpacked_size;
task 117 boot/generic/src/payload.c str_cpy(task->name, BOOTINFO_TASK_NAME_BUFLEN, name);
task 120 boot/generic/src/payload.c basename(task->name);
task 187 boot/generic/src/payload.c task_t task;
task 188 boot/generic/src/payload.c memset(&task, 0, sizeof(task));
task 225 boot/generic/src/payload.c kernel_dest, end, kernel_start, clear_cache, &task)) {
task 230 boot/generic/src/payload.c if ((uintptr_t) task.addr != kernel_start) {
task 242 boot/generic/src/payload.c ALIGN_UP((uintptr_t) task.addr + task.size, PAGE_SIZE);
task 249 boot/generic/src/payload.c dest, end, actual_dest, clear_cache, &task))
task 258 boot/generic/src/payload.c tmap->tasks[i] = task;
task 45 kernel/arch/amd64/src/proc/task.c void task_create_arch(task_t *task)
task 47 kernel/arch/amd64/src/proc/task.c task->arch.iomapver = 0;
task 48 kernel/arch/amd64/src/proc/task.c bitmap_initialize(&task->arch.iomap, 0, NULL);
task 56 kernel/arch/amd64/src/proc/task.c void task_destroy_arch(task_t *task)
task 58 kernel/arch/amd64/src/proc/task.c if (task->arch.iomap.bits != NULL)
task 59 kernel/arch/amd64/src/proc/task.c free(task->arch.iomap.bits);
task 45 kernel/arch/ia32/src/proc/task.c void task_create_arch(task_t *task)
task 47 kernel/arch/ia32/src/proc/task.c task->arch.iomapver = 0;
task 48 kernel/arch/ia32/src/proc/task.c bitmap_initialize(&task->arch.iomap, 0, NULL);
task 56 kernel/arch/ia32/src/proc/task.c void task_destroy_arch(task_t *task)
task 58 kernel/arch/ia32/src/proc/task.c if (task->arch.iomap.bits != NULL)
task 59 kernel/arch/ia32/src/proc/task.c free(task->arch.iomap.bits);
task 55 kernel/arch/ia64/src/ddi/ddi.c errno_t ddi_iospace_enable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 57 kernel/arch/ia64/src/ddi/ddi.c if (!task->arch.iomap) {
task 58 kernel/arch/ia64/src/ddi/ddi.c task->arch.iomap = malloc(sizeof(bitmap_t));
task 59 kernel/arch/ia64/src/ddi/ddi.c if (task->arch.iomap == NULL)
task 66 kernel/arch/ia64/src/ddi/ddi.c bitmap_initialize(task->arch.iomap, IO_MEMMAP_PAGES, store);
task 67 kernel/arch/ia64/src/ddi/ddi.c bitmap_clear_range(task->arch.iomap, 0, IO_MEMMAP_PAGES);
task 72 kernel/arch/ia64/src/ddi/ddi.c bitmap_set_range(task->arch.iomap, iopage, size / 4);
task 87 kernel/arch/ia64/src/ddi/ddi.c errno_t ddi_iospace_disable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 89 kernel/arch/ia64/src/ddi/ddi.c if (!task->arch.iomap)
task 94 kernel/arch/ia64/src/ddi/ddi.c bitmap_clear_range(task->arch.iomap, iopage, size / 4);
task 59 kernel/genarch/src/ddi/ddi-bitmap.c errno_t ddi_iospace_enable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 65 kernel/genarch/src/ddi/ddi-bitmap.c if (task->arch.iomap.elements < elements) {
task 75 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_initialize(&oldiomap, task->arch.iomap.elements,
task 76 kernel/genarch/src/ddi/ddi-bitmap.c task->arch.iomap.bits);
task 78 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_initialize(&task->arch.iomap, elements, store);
task 83 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_set_range(&task->arch.iomap, oldiomap.elements,
task 91 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_copy(&task->arch.iomap, &oldiomap,
task 101 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_clear_range(&task->arch.iomap, (size_t) ioaddr, size);
task 106 kernel/genarch/src/ddi/ddi-bitmap.c task->arch.iomapver++;
task 122 kernel/genarch/src/ddi/ddi-bitmap.c errno_t ddi_iospace_disable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 128 kernel/genarch/src/ddi/ddi-bitmap.c if (ioaddr >= task->arch.iomap.elements)
task 131 kernel/genarch/src/ddi/ddi-bitmap.c if (task->arch.iomap.elements < elements)
task 132 kernel/genarch/src/ddi/ddi-bitmap.c size -= elements - task->arch.iomap.elements;
task 137 kernel/genarch/src/ddi/ddi-bitmap.c bitmap_set_range(&task->arch.iomap, (size_t) ioaddr, size);
task 142 kernel/genarch/src/ddi/ddi-bitmap.c task->arch.iomapver++;
task 50 kernel/genarch/src/ddi/ddi-dummy.c errno_t ddi_iospace_enable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 65 kernel/genarch/src/ddi/ddi-dummy.c errno_t ddi_iospace_disable_arch(task_t *task, uintptr_t ioaddr, size_t size)
task 60 kernel/generic/include/arch.h ((CURRENT->task) ? (CURRENT->task->container) : (DEFAULT_CONTAINER))
task 64 kernel/generic/include/arch.h struct task;
task 79 kernel/generic/include/arch.h struct task *task; /**< Current task. */
task 61 kernel/generic/include/cap/cap.h struct task;
task 104 kernel/generic/include/cap/cap.h struct task *task;
task 129 kernel/generic/include/cap/cap.h extern errno_t caps_task_alloc(struct task *);
task 130 kernel/generic/include/cap/cap.h extern void caps_task_free(struct task *);
task 131 kernel/generic/include/cap/cap.h extern void caps_task_init(struct task *);
task 132 kernel/generic/include/cap/cap.h extern bool caps_apply_to_kobject_type(struct task *, kobject_type_t,
task 135 kernel/generic/include/cap/cap.h extern errno_t cap_alloc(struct task *, cap_handle_t *);
task 136 kernel/generic/include/cap/cap.h extern void cap_publish(struct task *, cap_handle_t, kobject_t *);
task 137 kernel/generic/include/cap/cap.h extern kobject_t *cap_unpublish(struct task *, cap_handle_t, kobject_type_t);
task 139 kernel/generic/include/cap/cap.h extern void cap_free(struct task *, cap_handle_t);
task 144 kernel/generic/include/cap/cap.h extern kobject_t *kobject_get(struct task *, cap_handle_t, kobject_type_t);
task 43 kernel/generic/include/ipc/event.h struct task;
task 65 kernel/generic/include/ipc/event.h extern void event_task_init(struct task *);
task 68 kernel/generic/include/ipc/event.h extern void event_task_set_unmask_callback(struct task *, event_task_type_t,
task 99 kernel/generic/include/ipc/event.h extern errno_t event_task_notify(struct task *, event_task_type_t, bool, sysarg_t, sysarg_t,
task 48 kernel/generic/include/ipc/ipc.h struct task;
task 68 kernel/generic/include/ipc/ipc.h struct task *caller;
task 85 kernel/generic/include/ipc/ipc.h struct task *task;
task 145 kernel/generic/include/ipc/ipc.h struct task *sender;
task 187 kernel/generic/include/ipc/ipc.h extern void ipc_phone_init(phone_t *, struct task *);
task 191 kernel/generic/include/ipc/ipc.h extern void ipc_answerbox_init(answerbox_t *, struct task *);
task 40 kernel/generic/include/proc/program.h struct task;
task 50 kernel/generic/include/proc/program.h struct task *task; /**< Program task */
task 62 kernel/generic/include/proc/task.h #define TASK CURRENT->task
task 139 kernel/generic/include/proc/thread.h task_t *task;
task 64 kernel/generic/include/udebug/udebug.h struct task *debugger;
task 87 kernel/generic/include/udebug/udebug.h struct task;
task 96 kernel/generic/include/udebug/udebug.h void udebug_thread_b_event_attach(struct thread *, struct task *);
task 104 kernel/generic/include/udebug/udebug.h errno_t udebug_task_cleanup(struct task *);
task 145 kernel/generic/src/cap/cap.c errno_t caps_task_alloc(task_t *task)
task 147 kernel/generic/src/cap/cap.c task->cap_info = (cap_info_t *) malloc(sizeof(cap_info_t));
task 148 kernel/generic/src/cap/cap.c if (!task->cap_info)
task 150 kernel/generic/src/cap/cap.c task->cap_info->handles = ra_arena_create();
task 151 kernel/generic/src/cap/cap.c if (!task->cap_info->handles)
task 153 kernel/generic/src/cap/cap.c if (!ra_span_add(task->cap_info->handles, CAPS_START, CAPS_SIZE))
task 155 kernel/generic/src/cap/cap.c if (!hash_table_create(&task->cap_info->caps, 0, 0, &caps_ops))
task 160 kernel/generic/src/cap/cap.c ra_arena_destroy(task->cap_info->handles);
task 162 kernel/generic/src/cap/cap.c free(task->cap_info);
task 170 kernel/generic/src/cap/cap.c void caps_task_init(task_t *task)
task 172 kernel/generic/src/cap/cap.c mutex_initialize(&task->cap_info->lock, MUTEX_RECURSIVE);
task 175 kernel/generic/src/cap/cap.c list_initialize(&task->cap_info->type_list[t]);
task 182 kernel/generic/src/cap/cap.c void caps_task_free(task_t *task)
task 184 kernel/generic/src/cap/cap.c hash_table_destroy(&task->cap_info->caps);
task 185 kernel/generic/src/cap/cap.c ra_arena_destroy(task->cap_info->handles);
task 186 kernel/generic/src/cap/cap.c free(task->cap_info);
task 200 kernel/generic/src/cap/cap.c bool caps_apply_to_kobject_type(task_t *task, kobject_type_t type,
task 205 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 206 kernel/generic/src/cap/cap.c list_foreach_safe(task->cap_info->type_list[type], cur, next) {
task 212 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 223 kernel/generic/src/cap/cap.c static void cap_initialize(cap_t *cap, task_t *task, cap_handle_t handle)
task 226 kernel/generic/src/cap/cap.c cap->task = task;
task 241 kernel/generic/src/cap/cap.c static cap_t *cap_get(task_t *task, cap_handle_t handle, cap_state_t state)
task 243 kernel/generic/src/cap/cap.c assert(mutex_locked(&task->cap_info->lock));
task 248 kernel/generic/src/cap/cap.c ht_link_t *link = hash_table_find(&task->cap_info->caps, &handle);
task 265 kernel/generic/src/cap/cap.c errno_t cap_alloc(task_t *task, cap_handle_t *handle)
task 267 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 270 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 274 kernel/generic/src/cap/cap.c if (!ra_alloc(task->cap_info->handles, 1, 1, &hbase)) {
task 276 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 279 kernel/generic/src/cap/cap.c cap_initialize(cap, task, (cap_handle_t) hbase);
task 280 kernel/generic/src/cap/cap.c hash_table_insert(&task->cap_info->caps, &cap->caps_link);
task 284 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 300 kernel/generic/src/cap/cap.c cap_publish(task_t *task, cap_handle_t handle, kobject_t *kobj)
task 303 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 304 kernel/generic/src/cap/cap.c cap_t *cap = cap_get(task, handle, CAP_STATE_ALLOCATED);
task 310 kernel/generic/src/cap/cap.c list_append(&cap->type_link, &task->cap_info->type_list[kobj->type]);
task 311 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 338 kernel/generic/src/cap/cap.c kobject_t *cap_unpublish(task_t *task, cap_handle_t handle, kobject_type_t type)
task 343 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 344 kernel/generic/src/cap/cap.c cap_t *cap = cap_get(task, handle, CAP_STATE_PUBLISHED);
task 350 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 358 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 380 kernel/generic/src/cap/cap.c mutex_lock(&cap->task->cap_info->lock);
task 384 kernel/generic/src/cap/cap.c mutex_unlock(&cap->task->cap_info->lock);
task 394 kernel/generic/src/cap/cap.c void cap_free(task_t *task, cap_handle_t handle)
task 399 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 400 kernel/generic/src/cap/cap.c cap_t *cap = cap_get(task, handle, CAP_STATE_ALLOCATED);
task 404 kernel/generic/src/cap/cap.c hash_table_remove_item(&task->cap_info->caps, &cap->caps_link);
task 405 kernel/generic/src/cap/cap.c ra_free(task->cap_info->handles, cap_handle_raw(handle), 1);
task 407 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 448 kernel/generic/src/cap/cap.c kobject_get(struct task *task, cap_handle_t handle, kobject_type_t type)
task 452 kernel/generic/src/cap/cap.c mutex_lock(&task->cap_info->lock);
task 453 kernel/generic/src/cap/cap.c cap_t *cap = cap_get(task, handle, CAP_STATE_PUBLISHED);
task 460 kernel/generic/src/cap/cap.c mutex_unlock(&task->cap_info->lock);
task 338 kernel/generic/src/ddi/ddi.c task_t *task = task_find_by_id(id);
task 340 kernel/generic/src/ddi/ddi.c if (!task)
task 345 kernel/generic/src/ddi/ddi.c irq_spinlock_lock(&task->lock, true);
task 348 kernel/generic/src/ddi/ddi.c if (container_check(CONTAINER, task->container))
task 349 kernel/generic/src/ddi/ddi.c rc = ddi_iospace_enable_arch(task, ioaddr, size);
task 351 kernel/generic/src/ddi/ddi.c irq_spinlock_unlock(&task->lock, true);
task 352 kernel/generic/src/ddi/ddi.c task_release(task);
task 375 kernel/generic/src/ddi/ddi.c task_t *task = task_find_by_id(id);
task 377 kernel/generic/src/ddi/ddi.c if (!task)
task 382 kernel/generic/src/ddi/ddi.c irq_spinlock_lock(&task->lock, true);
task 385 kernel/generic/src/ddi/ddi.c if (container_check(CONTAINER, task->container))
task 386 kernel/generic/src/ddi/ddi.c rc = ddi_iospace_disable_arch(task, ioaddr, size);
task 388 kernel/generic/src/ddi/ddi.c irq_spinlock_unlock(&task->lock, true);
task 389 kernel/generic/src/ddi/ddi.c task_release(task);
task 100 kernel/generic/src/debug/panic.c CURRENT->thread, CURRENT->task, CURRENT->cpu, CURRENT->as, CURRENT->magic);
task 105 kernel/generic/src/debug/panic.c if (CURRENT->task != NULL)
task 106 kernel/generic/src/debug/panic.c printf("task=\"%s\"\n", CURRENT->task->name);
task 60 kernel/generic/src/ipc/event.c static event_t *evno2event(int evno, task_t *task)
task 69 kernel/generic/src/ipc/event.c event = &task->events[(event_task_type_t) evno - EVENT_END];
task 83 kernel/generic/src/ipc/event.c void event_task_init(task_t *task)
task 86 kernel/generic/src/ipc/event.c event_initialize(evno2event(i, task));
task 131 kernel/generic/src/ipc/event.c void event_task_set_unmask_callback(task_t *task, event_task_type_t evno,
task 137 kernel/generic/src/ipc/event.c _event_set_unmask_callback(evno2event(evno, task), callback);
task 235 kernel/generic/src/ipc/event.c errno_t event_task_notify(task_t *task, event_task_type_t evno, bool mask,
task 241 kernel/generic/src/ipc/event.c return event_enqueue(evno2event(evno, task), mask, a1, a2, a3, a4, a5);
task 141 kernel/generic/src/ipc/ipc.c void ipc_answerbox_init(answerbox_t *box, task_t *task)
task 152 kernel/generic/src/ipc/ipc.c box->task = task;
task 780 kernel/generic/src/ipc/ipc.c kobject_t *kobj = cap_unpublish(cap->task, cap->handle,
task 783 kernel/generic/src/ipc/ipc.c cap_free(cap->task, cap->handle);
task 824 kernel/generic/src/ipc/ipc.c kobject_t *kobj = cap_unpublish(cap->task, cap->handle,
task 827 kernel/generic/src/ipc/ipc.c cap_free(cap->task, cap->handle);
task 942 kernel/generic/src/ipc/ipc.c phone->callee->task->taskid,
task 943 kernel/generic/src/ipc/ipc.c phone->callee->task->name);
task 969 kernel/generic/src/ipc/ipc.c task_t *task = task_find_by_id(taskid);
task 970 kernel/generic/src/ipc/ipc.c if (!task)
task 975 kernel/generic/src/ipc/ipc.c caps_apply_to_kobject_type(task, KOBJECT_TYPE_PHONE,
task 978 kernel/generic/src/ipc/ipc.c irq_spinlock_lock(&task->lock, true);
task 979 kernel/generic/src/ipc/ipc.c irq_spinlock_lock(&task->answerbox.lock, false);
task 982 kernel/generic/src/ipc/ipc.c atomic_load(&task->answerbox.active_calls));
task 995 kernel/generic/src/ipc/ipc.c ipc_print_call_list(&task->answerbox.calls);
task 997 kernel/generic/src/ipc/ipc.c ipc_print_call_list(&task->answerbox.dispatched_calls);
task 999 kernel/generic/src/ipc/ipc.c ipc_print_call_list(&task->answerbox.answers);
task 1001 kernel/generic/src/ipc/ipc.c irq_spinlock_unlock(&task->answerbox.lock, false);
task 1002 kernel/generic/src/ipc/ipc.c irq_spinlock_unlock(&task->lock, true);
task 1004 kernel/generic/src/ipc/ipc.c task_release(task);
task 67 kernel/generic/src/ipc/ipcrsc.c errno_t phone_alloc(task_t *task, bool publish, cap_phone_handle_t *phandle,
task 71 kernel/generic/src/ipc/ipcrsc.c errno_t rc = cap_alloc(task, &handle);
task 92 kernel/generic/src/ipc/ipcrsc.c ipc_phone_init(phone, task);
task 100 kernel/generic/src/ipc/ipcrsc.c cap_publish(task, handle, kobj);
task 208 kernel/generic/src/ipc/kbox.c task_t *task = task_find_by_id(taskid);
task 209 kernel/generic/src/ipc/kbox.c if (!task)
task 212 kernel/generic/src/ipc/kbox.c mutex_lock(&task->kb.cleanup_lock);
task 214 kernel/generic/src/ipc/kbox.c if (task->kb.finished) {
task 215 kernel/generic/src/ipc/kbox.c mutex_unlock(&task->kb.cleanup_lock);
task 216 kernel/generic/src/ipc/kbox.c task_release(task);
task 221 kernel/generic/src/ipc/kbox.c if (task->kb.thread == NULL) {
task 222 kernel/generic/src/ipc/kbox.c thread_t *kb_thread = thread_create(kbox_thread_proc, NULL, task,
task 226 kernel/generic/src/ipc/kbox.c mutex_unlock(&task->kb.cleanup_lock);
task 227 kernel/generic/src/ipc/kbox.c task_release(task);
task 231 kernel/generic/src/ipc/kbox.c task->kb.thread = kb_thread;
task 239 kernel/generic/src/ipc/kbox.c mutex_unlock(&task->kb.cleanup_lock);
task 240 kernel/generic/src/ipc/kbox.c task_release(task);
task 248 kernel/generic/src/ipc/kbox.c (void) ipc_phone_connect(phone_obj->phone, &task->kb.box);
task 250 kernel/generic/src/ipc/kbox.c mutex_unlock(&task->kb.cleanup_lock);
task 251 kernel/generic/src/ipc/kbox.c task_release(task);
task 54 kernel/generic/src/ipc/ops/pagein.c if (TASK->taskid <= phone->callee->task->taskid)
task 59 kernel/generic/src/ipc/ops/stchngath.c other_task_s = sender_obj->phone->callee->task;
task 95 kernel/generic/src/ipc/ops/stchngath.c other_task_r = recipient_obj->phone->callee->task;
task 218 kernel/generic/src/main/kinit.c programs[i].task = NULL;
task 254 kernel/generic/src/main/kinit.c programs[i].task = NULL;
task 270 kernel/generic/src/main/kinit.c programs[i].task = NULL;
task 278 kernel/generic/src/main/kinit.c assert(programs[i].task != NULL);
task 283 kernel/generic/src/main/kinit.c perm_set(programs[i].task,
task 288 kernel/generic/src/main/kinit.c ipc_box_0 = &programs[i].task->answerbox;
task 295 kernel/generic/src/main/kinit.c task_hold(programs[i].task);
task 312 kernel/generic/src/main/kinit.c if (programs[i].task != NULL) {
task 314 kernel/generic/src/main/kinit.c task_release(programs[i].task);
task 60 kernel/generic/src/proc/current.c the->task = NULL;
task 80 kernel/generic/src/proc/program.c prg->task = task_create(as, name);
task 81 kernel/generic/src/proc/program.c if (!prg->task) {
task 101 kernel/generic/src/proc/program.c task_release(prg->task);
task 102 kernel/generic/src/proc/program.c prg->task = NULL;
task 112 kernel/generic/src/proc/program.c prg->main_thread = thread_create(uinit, kernel_uarg, prg->task,
task 117 kernel/generic/src/proc/program.c task_release(prg->task);
task 118 kernel/generic/src/proc/program.c prg->task = NULL;
task 150 kernel/generic/src/proc/program.c prg->task = NULL;
task 159 kernel/generic/src/proc/program.c prg->task->debug_sections = calloc(1, sizeof(debug_sections_t));
task 160 kernel/generic/src/proc/program.c if (prg->task->debug_sections != NULL)
task 161 kernel/generic/src/proc/program.c *prg->task->debug_sections = get_debug_sections(image_addr, image_size);
task 247 kernel/generic/src/proc/program.c perm_set(prg.task, perm_get(TASK));
task 250 kernel/generic/src/proc/program.c task_release(prg.task);
task 191 kernel/generic/src/proc/scheduler.c static void switch_task(task_t *task)
task 194 kernel/generic/src/proc/scheduler.c if (TASK == task)
task 198 kernel/generic/src/proc/scheduler.c as_t *new_as = task->as;
task 207 kernel/generic/src/proc/scheduler.c TASK = task;
task 310 kernel/generic/src/proc/scheduler.c switch_task(THREAD->task);
task 109 kernel/generic/src/proc/task.c task_t *task;
task 112 kernel/generic/src/proc/task.c task_t *task_0 = ipc_box_0->task;
task 129 kernel/generic/src/proc/task.c task = task_first();
task 130 kernel/generic/src/proc/task.c while (task != NULL) {
task 131 kernel/generic/src/proc/task.c if (task != TASK) {
task 134 kernel/generic/src/proc/task.c printf("[%" PRIu64 "] ", task->taskid);
task 136 kernel/generic/src/proc/task.c task_kill_internal(task);
task 139 kernel/generic/src/proc/task.c task = task_next(task);
task 154 kernel/generic/src/proc/task.c task_t *task = (task_t *) obj;
task 156 kernel/generic/src/proc/task.c errno_t rc = caps_task_alloc(task);
task 160 kernel/generic/src/proc/task.c atomic_store(&task->lifecount, 0);
task 162 kernel/generic/src/proc/task.c irq_spinlock_initialize(&task->lock, "task_t_lock");
task 164 kernel/generic/src/proc/task.c list_initialize(&task->threads);
task 166 kernel/generic/src/proc/task.c ipc_answerbox_init(&task->answerbox, task);
task 168 kernel/generic/src/proc/task.c spinlock_initialize(&task->active_calls_lock, "active_calls_lock");
task 169 kernel/generic/src/proc/task.c list_initialize(&task->active_calls);
task 173 kernel/generic/src/proc/task.c task->kb.thread = NULL;
task 174 kernel/generic/src/proc/task.c ipc_answerbox_init(&task->kb.box, task);
task 175 kernel/generic/src/proc/task.c mutex_initialize(&task->kb.cleanup_lock, MUTEX_PASSIVE);
task 183 kernel/generic/src/proc/task.c task_t *task = (task_t *) obj;
task 185 kernel/generic/src/proc/task.c caps_task_free(task);
task 199 kernel/generic/src/proc/task.c task_t *task = (task_t *) slab_alloc(task_cache, FRAME_ATOMIC);
task 200 kernel/generic/src/proc/task.c if (!task)
task 203 kernel/generic/src/proc/task.c refcount_init(&task->refcount);
task 205 kernel/generic/src/proc/task.c task_create_arch(task);
task 207 kernel/generic/src/proc/task.c task->as = as;
task 208 kernel/generic/src/proc/task.c str_cpy(task->name, TASK_NAME_BUFLEN, name);
task 210 kernel/generic/src/proc/task.c task->container = CONTAINER;
task 211 kernel/generic/src/proc/task.c task->perms = 0;
task 212 kernel/generic/src/proc/task.c task->ucycles = 0;
task 213 kernel/generic/src/proc/task.c task->kcycles = 0;
task 215 kernel/generic/src/proc/task.c caps_task_init(task);
task 217 kernel/generic/src/proc/task.c task->ipc_info.call_sent = 0;
task 218 kernel/generic/src/proc/task.c task->ipc_info.call_received = 0;
task 219 kernel/generic/src/proc/task.c task->ipc_info.answer_sent = 0;
task 220 kernel/generic/src/proc/task.c task->ipc_info.answer_received = 0;
task 221 kernel/generic/src/proc/task.c task->ipc_info.irq_notif_received = 0;
task 222 kernel/generic/src/proc/task.c task->ipc_info.forwarded = 0;
task 224 kernel/generic/src/proc/task.c event_task_init(task);
task 226 kernel/generic/src/proc/task.c task->answerbox.active = true;
task 228 kernel/generic/src/proc/task.c task->debug_sections = NULL;
task 232 kernel/generic/src/proc/task.c udebug_task_init(&task->udebug);
task 235 kernel/generic/src/proc/task.c task->kb.box.active = true;
task 236 kernel/generic/src/proc/task.c task->kb.finished = false;
task 240 kernel/generic/src/proc/task.c (container_check(ipc_box_0->task->container, task->container))) {
task 242 kernel/generic/src/proc/task.c errno_t rc = phone_alloc(task, true, &phone_handle, NULL);
task 244 kernel/generic/src/proc/task.c task->as = NULL;
task 245 kernel/generic/src/proc/task.c task_destroy_arch(task);
task 246 kernel/generic/src/proc/task.c slab_free(task_cache, task);
task 250 kernel/generic/src/proc/task.c kobject_t *phone_obj = kobject_get(task, phone_handle,
task 257 kernel/generic/src/proc/task.c task->taskid = ++task_counter;
task 258 kernel/generic/src/proc/task.c odlink_initialize(&task->ltasks);
task 259 kernel/generic/src/proc/task.c odict_insert(&task->ltasks, &tasks, NULL);
task 263 kernel/generic/src/proc/task.c return task;
task 271 kernel/generic/src/proc/task.c static void task_destroy(task_t *task)
task 277 kernel/generic/src/proc/task.c odict_remove(&task->ltasks);
task 283 kernel/generic/src/proc/task.c task_destroy_arch(task);
task 288 kernel/generic/src/proc/task.c as_release(task->as);
task 290 kernel/generic/src/proc/task.c slab_free(task_cache, task);
task 300 kernel/generic/src/proc/task.c void task_hold(task_t *task)
task 302 kernel/generic/src/proc/task.c refcount_up(&task->refcount);
task 312 kernel/generic/src/proc/task.c void task_release(task_t *task)
task 314 kernel/generic/src/proc/task.c if (refcount_down(&task->refcount))
task 315 kernel/generic/src/proc/task.c task_destroy(task);
task 426 kernel/generic/src/proc/task.c task_t *task = NULL;
task 432 kernel/generic/src/proc/task.c task = odict_get_instance(odlink, task_t, ltasks);
task 440 kernel/generic/src/proc/task.c if (!refcount_try_up(&task->refcount))
task 441 kernel/generic/src/proc/task.c task = NULL;
task 446 kernel/generic/src/proc/task.c return task;
task 508 kernel/generic/src/proc/task.c void task_get_accounting(task_t *task, uint64_t *ucycles, uint64_t *kcycles)
task 511 kernel/generic/src/proc/task.c assert(irq_spinlock_locked(&task->lock));
task 514 kernel/generic/src/proc/task.c uint64_t uret = task->ucycles;
task 515 kernel/generic/src/proc/task.c uint64_t kret = task->kcycles;
task 518 kernel/generic/src/proc/task.c list_foreach(task->threads, th_link, thread_t, thread) {
task 535 kernel/generic/src/proc/task.c static void task_kill_internal(task_t *task)
task 537 kernel/generic/src/proc/task.c irq_spinlock_lock(&task->lock, true);
task 543 kernel/generic/src/proc/task.c list_foreach(task->threads, th_link, thread_t, thread) {
task 547 kernel/generic/src/proc/task.c irq_spinlock_unlock(&task->lock, true);
task 565 kernel/generic/src/proc/task.c task_t *task = task_find_by_id(id);
task 566 kernel/generic/src/proc/task.c if (!task)
task 569 kernel/generic/src/proc/task.c task_kill_internal(task);
task 570 kernel/generic/src/proc/task.c task_release(task);
task 615 kernel/generic/src/proc/task.c static void task_print(task_t *task, bool additional)
task 617 kernel/generic/src/proc/task.c irq_spinlock_lock(&task->lock, false);
task 622 kernel/generic/src/proc/task.c task_get_accounting(task, &ucycles, &kcycles);
task 628 kernel/generic/src/proc/task.c printf("%-8" PRIu64 " %9zu", task->taskid,
task 629 kernel/generic/src/proc/task.c atomic_load(&task->lifecount));
task 632 kernel/generic/src/proc/task.c " %9" PRIu64 "%c %9" PRIu64 "%c\n", task->taskid,
task 633 kernel/generic/src/proc/task.c task->name, task->container, task, task->as,
task 640 kernel/generic/src/proc/task.c "%9zu\n", task->taskid, ucycles, usuffix, kcycles,
task 641 kernel/generic/src/proc/task.c ksuffix, atomic_load(&task->lifecount));
task 644 kernel/generic/src/proc/task.c task->taskid, task->name, task->container, task, task->as);
task 647 kernel/generic/src/proc/task.c irq_spinlock_unlock(&task->lock, false);
task 677 kernel/generic/src/proc/task.c task_t *task;
task 679 kernel/generic/src/proc/task.c task = task_first();
task 680 kernel/generic/src/proc/task.c while (task != NULL) {
task 681 kernel/generic/src/proc/task.c task_print(task, additional);
task 682 kernel/generic/src/proc/task.c task = task_next(task);
task 695 kernel/generic/src/proc/task.c task_t *task = odict_get_instance(odlink, task_t, ltasks);
task 696 kernel/generic/src/proc/task.c return (void *) &task->taskid;
task 229 kernel/generic/src/proc/thread.c thread_t *thread_create(void (*func)(void *), void *arg, task_t *task,
task 282 kernel/generic/src/proc/thread.c thread->task = task;
task 295 kernel/generic/src/proc/thread.c thread_attach(thread, task);
task 314 kernel/generic/src/proc/thread.c assert(thread->task);
task 324 kernel/generic/src/proc/thread.c irq_spinlock_lock(&thread->task->lock, false);
task 334 kernel/generic/src/proc/thread.c thread->task->ucycles += atomic_time_read(&thread->ucycles);
task 335 kernel/generic/src/proc/thread.c thread->task->kcycles += atomic_time_read(&thread->kcycles);
task 338 kernel/generic/src/proc/thread.c irq_spinlock_unlock(&thread->task->lock, false);
task 365 kernel/generic/src/proc/thread.c task_release(thread->task);
task 366 kernel/generic/src/proc/thread.c thread->task = NULL;
task 387 kernel/generic/src/proc/thread.c void thread_attach(thread_t *thread, task_t *task)
task 394 kernel/generic/src/proc/thread.c irq_spinlock_lock(&task->lock, false);
task 397 kernel/generic/src/proc/thread.c task_hold(task);
task 401 kernel/generic/src/proc/thread.c atomic_inc(&task->lifecount);
task 403 kernel/generic/src/proc/thread.c list_append(&thread->th_link, &task->threads);
task 405 kernel/generic/src/proc/thread.c irq_spinlock_unlock(&task->lock, false);
task 692 kernel/generic/src/proc/thread.c name = thread->task->name;
task 703 kernel/generic/src/proc/thread.c thread->task, thread->task->container);
task 53 kernel/generic/src/security/perm.c void perm_set(task_t *task, perm_t perms)
task 55 kernel/generic/src/security/perm.c irq_spinlock_lock(&task->lock, true);
task 56 kernel/generic/src/security/perm.c task->perms = perms;
task 57 kernel/generic/src/security/perm.c irq_spinlock_unlock(&task->lock, true);
task 67 kernel/generic/src/security/perm.c perm_t perm_get(task_t *task)
task 69 kernel/generic/src/security/perm.c irq_spinlock_lock(&task->lock, true);
task 70 kernel/generic/src/security/perm.c perm_t perms = task->perms;
task 71 kernel/generic/src/security/perm.c irq_spinlock_unlock(&task->lock, true);
task 91 kernel/generic/src/security/perm.c task_t *task = task_find_by_id(taskid);
task 92 kernel/generic/src/security/perm.c if (!task)
task 97 kernel/generic/src/security/perm.c irq_spinlock_lock(&task->lock, true);
task 98 kernel/generic/src/security/perm.c if (container_check(CONTAINER, task->container)) {
task 99 kernel/generic/src/security/perm.c task->perms |= perms;
task 102 kernel/generic/src/security/perm.c irq_spinlock_unlock(&task->lock, true);
task 104 kernel/generic/src/security/perm.c task_release(task);
task 121 kernel/generic/src/security/perm.c task_t *task = task_find_by_id(taskid);
task 122 kernel/generic/src/security/perm.c if (!task)
task 130 kernel/generic/src/security/perm.c if (task != TASK && !(perm_get(TASK) & PERM_PERM)) {
task 131 kernel/generic/src/security/perm.c task_release(task);
task 137 kernel/generic/src/security/perm.c irq_spinlock_lock(&task->lock, true);
task 138 kernel/generic/src/security/perm.c if (container_check(CONTAINER, task->container)) {
task 139 kernel/generic/src/security/perm.c task->perms &= ~perms;
task 142 kernel/generic/src/security/perm.c irq_spinlock_unlock(&task->lock, true);
task 144 kernel/generic/src/security/perm.c task_release(task);
task 62 kernel/generic/src/synch/syswaitq.c kobject_t *kobj = cap_unpublish(cap->task, cap->handle,
task 65 kernel/generic/src/synch/syswaitq.c cap_free(cap->task, cap->handle);
task 214 kernel/generic/src/sysinfo/stats.c static void produce_stats_task(task_t *task, stats_task_t *stats_task)
task 217 kernel/generic/src/sysinfo/stats.c assert(irq_spinlock_locked(&task->lock));
task 219 kernel/generic/src/sysinfo/stats.c stats_task->task_id = task->taskid;
task 220 kernel/generic/src/sysinfo/stats.c str_cpy(stats_task->name, TASK_NAME_BUFLEN, task->name);
task 221 kernel/generic/src/sysinfo/stats.c stats_task->virtmem = get_task_virtmem(task->as);
task 222 kernel/generic/src/sysinfo/stats.c stats_task->resmem = get_task_resmem(task->as);
task 223 kernel/generic/src/sysinfo/stats.c stats_task->threads = atomic_load(&task->lifecount);
task 224 kernel/generic/src/sysinfo/stats.c task_get_accounting(task, &(stats_task->ucycles),
task 226 kernel/generic/src/sysinfo/stats.c stats_task->ipc_info = task->ipc_info;
task 272 kernel/generic/src/sysinfo/stats.c task_t *task = task_first();
task 273 kernel/generic/src/sysinfo/stats.c while (task != NULL) {
task 275 kernel/generic/src/sysinfo/stats.c irq_spinlock_lock(&(task->lock), false);
task 278 kernel/generic/src/sysinfo/stats.c produce_stats_task(task, &stats_tasks[i]);
task 281 kernel/generic/src/sysinfo/stats.c irq_spinlock_unlock(&(task->lock), false);
task 282 kernel/generic/src/sysinfo/stats.c task = task_next(task);
task 303 kernel/generic/src/sysinfo/stats.c stats_thread->task_id = thread->task->taskid;
task 416 kernel/generic/src/sysinfo/stats.c state->data[state->i].callee = phone->callee->task->taskid;
task 451 kernel/generic/src/sysinfo/stats.c task_t *task = task_first();
task 452 kernel/generic/src/sysinfo/stats.c while (task != NULL) {
task 453 kernel/generic/src/sysinfo/stats.c task_hold(task);
task 456 kernel/generic/src/sysinfo/stats.c caps_apply_to_kobject_type(task, KOBJECT_TYPE_PHONE,
task 461 kernel/generic/src/sysinfo/stats.c task = task_next(task);
task 471 kernel/generic/src/sysinfo/stats.c task = task_first();
task 472 kernel/generic/src/sysinfo/stats.c while (task != NULL) {
task 476 kernel/generic/src/sysinfo/stats.c caps_apply_to_kobject_type(task, KOBJECT_TYPE_PHONE,
task 481 kernel/generic/src/sysinfo/stats.c task_t *prev_task = task;
task 482 kernel/generic/src/sysinfo/stats.c task = task_next(prev_task);
task 522 kernel/generic/src/sysinfo/stats.c task_t *task = task_find_by_id(task_id);
task 523 kernel/generic/src/sysinfo/stats.c if (!task)
task 540 kernel/generic/src/sysinfo/stats.c irq_spinlock_lock(&task->lock, true);
task 541 kernel/generic/src/sysinfo/stats.c produce_stats_task(task, stats_task);
task 542 kernel/generic/src/sysinfo/stats.c irq_spinlock_unlock(&task->lock, true);
task 546 kernel/generic/src/sysinfo/stats.c task_release(task);
task 286 kernel/generic/src/udebug/udebug.c void udebug_thread_b_event_attach(struct thread *thread, struct task *task)
task 291 kernel/generic/src/udebug/udebug.c thread_attach(thread, task);
task 393 kernel/generic/src/udebug/udebug.c errno_t udebug_task_cleanup(struct task *task)
task 395 kernel/generic/src/udebug/udebug.c assert(mutex_locked(&task->udebug.lock));
task 397 kernel/generic/src/udebug/udebug.c if ((task->udebug.dt_state != UDEBUG_TS_BEGINNING) &&
task 398 kernel/generic/src/udebug/udebug.c (task->udebug.dt_state != UDEBUG_TS_ACTIVE)) {
task 402 kernel/generic/src/udebug/udebug.c LOG("Task %" PRIu64, task->taskid);
task 405 kernel/generic/src/udebug/udebug.c list_foreach(task->threads, th_link, thread_t, thread) {
task 429 kernel/generic/src/udebug/udebug.c ipc_answer(&task->answerbox, thread->udebug.go_call);
task 452 kernel/generic/src/udebug/udebug.c task->udebug.dt_state = UDEBUG_TS_INACTIVE;
task 453 kernel/generic/src/udebug/udebug.c task->udebug.debugger = NULL;
task 114 kernel/generic/src/udebug/udebug_ops.c if (thread->task != TASK) {
task 422 uspace/app/top/top.c stats_task_t *task = &data->tasks[i];
task 425 uspace/app/top/top.c field[TASK_COL_ID].uint = task->task_id;
task 427 uspace/app/top/top.c field[TASK_COL_NUM_THREADS].uint = task->threads;
task 429 uspace/app/top/top.c field[TASK_COL_RESIDENT].uint = task->resmem;
task 433 uspace/app/top/top.c field[TASK_COL_VIRTUAL].uint = task->virtmem;
task 441 uspace/app/top/top.c field[TASK_COL_NAME].string = task->name;
task 423 uspace/dist/src/c/demos/top/top.c stats_task_t *task = &data->tasks[i];
task 426 uspace/dist/src/c/demos/top/top.c field[TASK_COL_ID].uint = task->task_id;
task 428 uspace/dist/src/c/demos/top/top.c field[TASK_COL_NUM_THREADS].uint = task->threads;
task 430 uspace/dist/src/c/demos/top/top.c field[TASK_COL_RESIDENT].uint = task->resmem;
task 434 uspace/dist/src/c/demos/top/top.c field[TASK_COL_VIRTUAL].uint = task->virtmem;
task 442 uspace/dist/src/c/demos/top/top.c field[TASK_COL_NAME].string = task->name;
task 556 uspace/srv/hid/remcons/remcons.c task_id_t task;
task 558 uspace/srv/hid/remcons/remcons.c errno_t rc = task_spawnl(&task, &wait, APP_GETTERM, APP_GETTERM, user->service_name,
task 573 uspace/srv/hid/remcons/remcons.c user->task_id = task;
HelenOS homepage, sources at GitHub