Lines Matching refs:prov

111 sdt_create_provider(struct sdt_provider *prov)  in sdt_create_provider()  argument
116 if (strcmp(prov->name, curr->name) == 0) { in sdt_create_provider()
128 newprov->name = strdup(prov->name, M_SDT); in sdt_create_provider()
129 prov->sdt_refs = newprov->sdt_refs = 1; in sdt_create_provider()
135 prov->id = newprov->id; in sdt_create_provider()
141 struct sdt_provider *prov; in sdt_create_probe() local
156 TAILQ_FOREACH(prov, &sdt_prov_list, prov_entry) in sdt_create_probe()
157 if (strcmp(prov->name, probe->prov->name) == 0) in sdt_create_probe()
160 KASSERT(prov != NULL, ("probe defined without a provider")); in sdt_create_probe()
192 if (dtrace_probe_lookup(prov->id, mod, func, name) != DTRACE_IDNONE) in sdt_create_probe()
196 if (strcmp(prov->name, "lockstat") == 0) { in sdt_create_probe()
205 (void)dtrace_probe_create(prov->id, mod, func, name, aframes, probe); in sdt_create_probe()
285 if (strcmp(probe->prov->name, "lockstat") == 0) { in sdt_enable()
310 if (strcmp(probe->prov->name, "lockstat") == 0) { in sdt_disable()
372 struct sdt_provider **prov, **begin, **end; in sdt_kld_load_providers() local
377 for (prov = begin; prov < end; prov++) in sdt_kld_load_providers()
378 sdt_create_provider(*prov); in sdt_kld_load_providers()
419 tp->probe->prov->name, tp->probe->mod, in sdt_kld_load_probes()
446 struct sdt_provider *prov, **curr, **begin, **end, *tmp; in sdt_kld_unload_providers() local
458 TAILQ_FOREACH_SAFE(prov, &sdt_prov_list, prov_entry, tmp) { in sdt_kld_unload_providers()
459 if (strcmp(prov->name, (*curr)->name) != 0) in sdt_kld_unload_providers()
462 if (prov->sdt_refs == 1) { in sdt_kld_unload_providers()
463 if (dtrace_unregister(prov->id) != 0) { in sdt_kld_unload_providers()
466 TAILQ_REMOVE(&sdt_prov_list, prov, prov_entry); in sdt_kld_unload_providers()
467 free(prov->name, M_SDT); in sdt_kld_unload_providers()
468 free(prov, M_SDT); in sdt_kld_unload_providers()
470 prov->sdt_refs--; in sdt_kld_unload_providers()
620 struct sdt_provider *prov, *tmp; in sdt_unload() local
628 TAILQ_FOREACH_SAFE(prov, &sdt_prov_list, prov_entry, tmp) { in sdt_unload()
629 ret = dtrace_unregister(prov->id); in sdt_unload()
632 TAILQ_REMOVE(&sdt_prov_list, prov, prov_entry); in sdt_unload()
633 free(prov->name, M_SDT); in sdt_unload()
634 free(prov, M_SDT); in sdt_unload()