• Home
  • Raw
  • Download

Lines Matching refs:spu

41 static void spu_buff_add(unsigned long int value, int spu)  in spu_buff_add()  argument
55 if (spu_buff[spu].head >= spu_buff[spu].tail) { in spu_buff_add()
56 if ((spu_buff[spu].head - spu_buff[spu].tail) in spu_buff_add()
60 } else if (spu_buff[spu].tail > spu_buff[spu].head) { in spu_buff_add()
61 if ((spu_buff[spu].tail - spu_buff[spu].head) in spu_buff_add()
67 spu_buff[spu].buff[spu_buff[spu].head] = value; in spu_buff_add()
68 spu_buff[spu].head++; in spu_buff_add()
70 if (spu_buff[spu].head >= max_spu_buff) in spu_buff_add()
71 spu_buff[spu].head = 0; in spu_buff_add()
89 int spu; in sync_spu_buff() local
93 for (spu = 0; spu < num_spu_nodes; spu++) { in sync_spu_buff()
97 if (spu_buff[spu].buff == NULL) in sync_spu_buff()
106 curr_head = spu_buff[spu].head; in sync_spu_buff()
112 oprofile_put_buff(spu_buff[spu].buff, in sync_spu_buff()
113 spu_buff[spu].tail, in sync_spu_buff()
117 spu_buff[spu].tail = curr_head; in sync_spu_buff()
136 struct spu *the_spu; /* needed to access pointer to local_store */
156 static struct cached_info *get_cached_info(struct spu *the_spu, int spu_num) in get_cached_info()
187 prepare_cached_spu_info(struct spu *spu, unsigned long objectId) in prepare_cached_spu_info() argument
197 info = get_cached_info(spu, spu->number); in prepare_cached_spu_info()
215 new_map = create_vma_map(spu, objectId); in prepare_cached_spu_info()
226 info->the_spu = spu; in prepare_cached_spu_info()
229 spu_info[spu->number] = info; in prepare_cached_spu_info()
240 spu_set_profile_private_kref(spu->ctx, &info->cache_ref, in prepare_cached_spu_info()
315 get_exec_dcookie_and_offset(struct spu *spu, unsigned int *offsetp, in get_exec_dcookie_and_offset() argument
323 struct mm_struct *mm = spu->mm; in get_exec_dcookie_and_offset()
372 static int process_context_switch(struct spu *spu, unsigned long objectId) in process_context_switch() argument
379 retval = prepare_cached_spu_info(spu, objectId); in process_context_switch()
386 app_dcookie = get_exec_dcookie_and_offset(spu, &offset, &spu_cookie, objectId); in process_context_switch()
394 spu_buff_add(ESCAPE_CODE, spu->number); in process_context_switch()
395 spu_buff_add(SPU_CTX_SWITCH_CODE, spu->number); in process_context_switch()
396 spu_buff_add(spu->number, spu->number); in process_context_switch()
397 spu_buff_add(spu->pid, spu->number); in process_context_switch()
398 spu_buff_add(spu->tgid, spu->number); in process_context_switch()
399 spu_buff_add(app_dcookie, spu->number); in process_context_switch()
400 spu_buff_add(spu_cookie, spu->number); in process_context_switch()
401 spu_buff_add(offset, spu->number); in process_context_switch()
407 spu_buff[spu->number].ctx_sw_seen = 1; in process_context_switch()
427 struct spu *the_spu = data; in spu_active_notify()
458 int spu; in oprofile_spu_buff_create() local
462 for (spu = 0; spu < num_spu_nodes; spu++) { in oprofile_spu_buff_create()
466 spu_buff[spu].head = 0; in oprofile_spu_buff_create()
467 spu_buff[spu].tail = 0; in oprofile_spu_buff_create()
475 spu_buff[spu].buff = kzalloc((max_spu_buff in oprofile_spu_buff_create()
479 if (!spu_buff[spu].buff) { in oprofile_spu_buff_create()
483 __func__, __LINE__, spu); in oprofile_spu_buff_create()
486 while (spu >= 0) { in oprofile_spu_buff_create()
487 kfree(spu_buff[spu].buff); in oprofile_spu_buff_create()
488 spu_buff[spu].buff = 0; in oprofile_spu_buff_create()
489 spu--; in oprofile_spu_buff_create()
509 int spu; in spu_sync_start() local
526 for (spu = 0; spu < num_spu_nodes; spu++) { in spu_sync_start()
527 spu_buff_add(ESCAPE_CODE, spu); in spu_sync_start()
528 spu_buff_add(SPU_PROFILING_CODE, spu); in spu_sync_start()
529 spu_buff_add(num_spu_nodes, spu); in spu_sync_start()
533 for (spu = 0; spu < num_spu_nodes; spu++) { in spu_sync_start()
534 spu_buff[spu].ctx_sw_seen = 0; in spu_sync_start()
535 spu_buff[spu].last_guard_val = 0; in spu_sync_start()
558 struct spu *the_spu; in spu_sync_buffer()