• Home
  • Raw
  • Download

Lines Matching refs:task

355 get_new_event(struct task_desc *task, u64 timestamp)  in get_new_event()  argument
358 unsigned long idx = task->nr_events; in get_new_event()
364 task->nr_events++; in get_new_event()
365 size = sizeof(struct sched_atom *) * task->nr_events; in get_new_event()
366 task->atoms = realloc(task->atoms, size); in get_new_event()
367 BUG_ON(!task->atoms); in get_new_event()
369 task->atoms[idx] = event; in get_new_event()
374 static struct sched_atom *last_event(struct task_desc *task) in last_event() argument
376 if (!task->nr_events) in last_event()
379 return task->atoms[task->nr_events - 1]; in last_event()
382 static void add_sched_event_run(struct perf_sched *sched, struct task_desc *task, in add_sched_event_run() argument
385 struct sched_atom *event, *curr_event = last_event(task); in add_sched_event_run()
397 event = get_new_event(task, timestamp); in add_sched_event_run()
405 static void add_sched_event_wakeup(struct perf_sched *sched, struct task_desc *task, in add_sched_event_wakeup() argument
410 event = get_new_event(task, timestamp); in add_sched_event_wakeup()
432 static void add_sched_event_sleep(struct perf_sched *sched, struct task_desc *task, in add_sched_event_sleep() argument
435 struct sched_atom *event = get_new_event(task, timestamp); in add_sched_event_sleep()
445 struct task_desc *task; in register_pid() local
460 task = sched->pid_to_task[pid]; in register_pid()
462 if (task) in register_pid()
463 return task; in register_pid()
465 task = zalloc(sizeof(*task)); in register_pid()
466 task->pid = pid; in register_pid()
467 task->nr = sched->nr_tasks; in register_pid()
468 strcpy(task->comm, comm); in register_pid()
473 add_sched_event_sleep(sched, task, 0, 0); in register_pid()
475 sched->pid_to_task[pid] = task; in register_pid()
479 sched->tasks[task->nr] = task; in register_pid()
484 return task; in register_pid()
490 struct task_desc *task; in print_task_traces() local
494 task = sched->tasks[i]; in print_task_traces()
496 task->nr, task->comm, task->pid, task->nr_events); in print_task_traces()
610 struct task_desc *task; member
618 struct task_desc *this_task = parms->task; in thread_func()
661 struct task_desc *task; in create_tasks() local
678 parms->task = task = sched->tasks[i]; in create_tasks()
681 sem_init(&task->sleep_sem, 0, 0); in create_tasks()
682 sem_init(&task->ready_for_work, 0, 0); in create_tasks()
683 sem_init(&task->work_done_sem, 0, 0); in create_tasks()
684 task->curr_event = 0; in create_tasks()
685 err = pthread_create(&task->thread, &attr, thread_func, parms); in create_tasks()
693 struct task_desc *task; in wait_for_tasks() local
701 task = sched->tasks[i]; in wait_for_tasks()
702 ret = sem_wait(&task->ready_for_work); in wait_for_tasks()
704 sem_init(&task->ready_for_work, 0, 0); in wait_for_tasks()
714 task = sched->tasks[i]; in wait_for_tasks()
715 ret = sem_wait(&task->work_done_sem); in wait_for_tasks()
717 sem_init(&task->work_done_sem, 0, 0); in wait_for_tasks()
718 sched->cpu_usage += task->cpu_usage; in wait_for_tasks()
719 task->cpu_usage = 0; in wait_for_tasks()
737 task = sched->tasks[i]; in wait_for_tasks()
738 sem_init(&task->sleep_sem, 0, 0); in wait_for_tasks()
739 task->curr_event = 0; in wait_for_tasks()