Lines Matching refs:help

9549 	dtrace_helpers_t *help, *next;  in dtrace_meta_register()  local
9599 help = dtrace_deferred_pid; in dtrace_meta_register()
9604 while (help != NULL) { in dtrace_meta_register()
9605 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_meta_register()
9606 proc_t *p = proc_find(help->dthps_pid); in dtrace_meta_register()
9609 dtrace_helper_provide(&help->dthps_provs[i]->dthp_prov, in dtrace_meta_register()
9614 next = help->dthps_next; in dtrace_meta_register()
9615 help->dthps_next = NULL; in dtrace_meta_register()
9616 help->dthps_prev = NULL; in dtrace_meta_register()
9617 help->dthps_deferred = 0; in dtrace_meta_register()
9618 help = next; in dtrace_meta_register()
15330 dtrace_helpers_t *help = p->p_dtrace_helpers; in dtrace_helper_destroygen() local
15337 if (help == NULL || gen > help->dthps_generation) in dtrace_helper_destroygen()
15340 vstate = &help->dthps_vstate; in dtrace_helper_destroygen()
15345 for (h = help->dthps_actions[i]; h != NULL; h = next) { in dtrace_helper_destroygen()
15352 help->dthps_actions[i] = next; in dtrace_helper_destroygen()
15375 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_helper_destroygen()
15376 prov = help->dthps_provs[i]; in dtrace_helper_destroygen()
15385 if (i == help->dthps_nprovs) in dtrace_helper_destroygen()
15391 help->dthps_nprovs--; in dtrace_helper_destroygen()
15392 help->dthps_provs[i] = help->dthps_provs[help->dthps_nprovs]; in dtrace_helper_destroygen()
15393 help->dthps_provs[help->dthps_nprovs] = NULL; in dtrace_helper_destroygen()
15432 dtrace_helpers_t *help; in dtrace_helper_action_add() local
15442 help = p->p_dtrace_helpers; in dtrace_helper_action_add()
15443 last = help->dthps_actions[which]; in dtrace_helper_action_add()
15444 vstate = &help->dthps_vstate; in dtrace_helper_action_add()
15460 helper->dtha_generation = help->dthps_generation; in dtrace_helper_action_add()
15490 help->dthps_actions[which] = helper; in dtrace_helper_action_add()
15507 dtrace_helper_provider_register(proc_t *p, dtrace_helpers_t *help, in dtrace_helper_provider_register() argument
15523 if (help->dthps_next == NULL && help->dthps_prev == NULL && in dtrace_helper_provider_register()
15524 dtrace_deferred_pid != help) { in dtrace_helper_provider_register()
15525 help->dthps_deferred = 1; in dtrace_helper_provider_register()
15526 help->dthps_pid = proc_getpid(p); in dtrace_helper_provider_register()
15527 help->dthps_next = dtrace_deferred_pid; in dtrace_helper_provider_register()
15528 help->dthps_prev = NULL; in dtrace_helper_provider_register()
15530 dtrace_deferred_pid->dthps_prev = help; in dtrace_helper_provider_register()
15531 dtrace_deferred_pid = help; in dtrace_helper_provider_register()
15556 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_helper_provider_register()
15557 dtrace_helper_provide(&help->dthps_provs[i]->dthp_prov, in dtrace_helper_provider_register()
15566 dtrace_helpers_t *help; in dtrace_helper_provider_add() local
15571 help = p->p_dtrace_helpers; in dtrace_helper_provider_add()
15572 ASSERT(help != NULL); in dtrace_helper_provider_add()
15578 if (help->dthps_nprovs >= dtrace_helper_providers_max) in dtrace_helper_provider_add()
15584 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_helper_provider_add()
15586 help->dthps_provs[i]->dthp_prov.dofhp_addr) in dtrace_helper_provider_add()
15598 if (help->dthps_maxprovs == help->dthps_nprovs) { in dtrace_helper_provider_add()
15599 tmp_maxprovs = help->dthps_maxprovs; in dtrace_helper_provider_add()
15600 tmp_provs = help->dthps_provs; in dtrace_helper_provider_add()
15602 if (help->dthps_maxprovs == 0) in dtrace_helper_provider_add()
15603 help->dthps_maxprovs = 2; in dtrace_helper_provider_add()
15605 help->dthps_maxprovs *= 2; in dtrace_helper_provider_add()
15606 if (help->dthps_maxprovs > dtrace_helper_providers_max) in dtrace_helper_provider_add()
15607 help->dthps_maxprovs = dtrace_helper_providers_max; in dtrace_helper_provider_add()
15609 ASSERT(tmp_maxprovs < help->dthps_maxprovs); in dtrace_helper_provider_add()
15611 help->dthps_provs = kmem_zalloc(help->dthps_maxprovs * in dtrace_helper_provider_add()
15615 bcopy(tmp_provs, help->dthps_provs, tmp_maxprovs * in dtrace_helper_provider_add()
15622 help->dthps_provs[help->dthps_nprovs] = hprov; in dtrace_helper_provider_add()
15623 help->dthps_nprovs++; in dtrace_helper_provider_add()
15860 dtrace_helpers_t *help; in dtrace_helper_slurp() local
15869 if ((help = p->p_dtrace_helpers) == NULL) in dtrace_helper_slurp()
15870 help = dtrace_helpers_create(p); in dtrace_helper_slurp()
15872 vstate = &help->dthps_vstate; in dtrace_helper_slurp()
15924 (void) dtrace_helper_destroygen(p, help->dthps_generation); in dtrace_helper_slurp()
15936 gen = help->dthps_generation++; in dtrace_helper_slurp()
15943 dtrace_helper_provider_register(p, help, dhp); in dtrace_helper_slurp()
16263 dtrace_helpers_t *help; in dtrace_lazy_dofs_process() local
16270 if ((help = p->p_dtrace_helpers) == NULL) in dtrace_lazy_dofs_process()
16271 help = dtrace_helpers_create(p); in dtrace_lazy_dofs_process()
16278 if (help->dthps_generation <= generation) { in dtrace_lazy_dofs_process()
16279 help->dthps_generation = generation; in dtrace_lazy_dofs_process()
16368 dtrace_helpers_t *help; in dtrace_helpers_create() local
16373 help = kmem_zalloc(sizeof (dtrace_helpers_t), KM_SLEEP); in dtrace_helpers_create()
16374 help->dthps_actions = kmem_zalloc(sizeof (dtrace_helper_action_t *) * in dtrace_helpers_create()
16377 p->p_dtrace_helpers = help; in dtrace_helpers_create()
16380 return (help); in dtrace_helpers_create()
16386 dtrace_helpers_t *help; in dtrace_helpers_destroy() local
16396 help = p->p_dtrace_helpers; in dtrace_helpers_destroy()
16397 vstate = &help->dthps_vstate; in dtrace_helpers_destroy()
16411 for (h = help->dthps_actions[i]; h != NULL; h = next) { in dtrace_helpers_destroy()
16423 if (help->dthps_maxprovs > 0) { in dtrace_helpers_destroy()
16427 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_helpers_destroy()
16429 &help->dthps_provs[i]->dthp_prov, p); in dtrace_helpers_destroy()
16433 ASSERT(help->dthps_deferred == 0 || in dtrace_helpers_destroy()
16434 help->dthps_next != NULL || in dtrace_helpers_destroy()
16435 help->dthps_prev != NULL || in dtrace_helpers_destroy()
16436 help == dtrace_deferred_pid); in dtrace_helpers_destroy()
16441 if (help->dthps_next != NULL) in dtrace_helpers_destroy()
16442 help->dthps_next->dthps_prev = help->dthps_prev; in dtrace_helpers_destroy()
16443 if (help->dthps_prev != NULL) in dtrace_helpers_destroy()
16444 help->dthps_prev->dthps_next = help->dthps_next; in dtrace_helpers_destroy()
16445 if (dtrace_deferred_pid == help) { in dtrace_helpers_destroy()
16446 dtrace_deferred_pid = help->dthps_next; in dtrace_helpers_destroy()
16447 ASSERT(help->dthps_prev == NULL); in dtrace_helpers_destroy()
16454 for (i = 0; i < help->dthps_nprovs; i++) { in dtrace_helpers_destroy()
16455 dtrace_helper_provider_destroy(help->dthps_provs[i]); in dtrace_helpers_destroy()
16458 kmem_free(help->dthps_provs, help->dthps_maxprovs * in dtrace_helpers_destroy()
16464 dtrace_vstate_fini(&help->dthps_vstate); in dtrace_helpers_destroy()
16465 kmem_free(help->dthps_actions, in dtrace_helpers_destroy()
16467 kmem_free(help, sizeof (dtrace_helpers_t)); in dtrace_helpers_destroy()
16477 dtrace_helpers_t *help, *newhelp; in dtrace_helpers_duplicate() local
16489 help = from->p_dtrace_helpers; in dtrace_helpers_duplicate()
16493 newhelp->dthps_generation = help->dthps_generation; in dtrace_helpers_duplicate()
16500 if ((helper = help->dthps_actions[i]) == NULL) in dtrace_helpers_duplicate()
16539 if (help->dthps_nprovs > 0) { in dtrace_helpers_duplicate()
16540 newhelp->dthps_nprovs = help->dthps_nprovs; in dtrace_helpers_duplicate()
16541 newhelp->dthps_maxprovs = help->dthps_nprovs; in dtrace_helpers_duplicate()
16545 newhelp->dthps_provs[i] = help->dthps_provs[i]; in dtrace_helpers_duplicate()