Lines Matching defs:prov

110 sdt_create_provider(struct sdt_provider *prov)
115 if (strcmp(prov->name, curr->name) == 0) {
122 * Make a copy of prov so that we don't lose fields if its module is
127 newprov->name = strdup(prov->name, M_SDT);
128 prov->sdt_refs = newprov->sdt_refs = 1;
134 prov->id = newprov->id;
140 struct sdt_provider *prov;
155 TAILQ_FOREACH(prov, &sdt_prov_list, prov_entry)
156 if (strcmp(prov->name, probe->prov->name) == 0)
159 KASSERT(prov != NULL, ("probe defined without a provider"));
191 if (dtrace_probe_lookup(prov->id, mod, func, name) != DTRACE_IDNONE)
195 if (strcmp(prov->name, "lockstat") == 0) {
204 (void)dtrace_probe_create(prov->id, mod, func, name, aframes, probe);
276 if (strcmp(probe->prov->name, "lockstat") == 0) {
301 if (strcmp(probe->prov->name, "lockstat") == 0) {
363 struct sdt_provider **prov, **begin, **end;
367 for (prov = begin; prov < end; prov++)
368 sdt_create_provider(*prov);
408 tp->probe->prov->name, tp->probe->mod,
435 struct sdt_provider *prov, **curr, **begin, **end, *tmp;
447 TAILQ_FOREACH_SAFE(prov, &sdt_prov_list, prov_entry, tmp) {
448 if (strcmp(prov->name, (*curr)->name) != 0)
451 if (prov->sdt_refs == 1) {
452 if (dtrace_unregister(prov->id) != 0) {
455 TAILQ_REMOVE(&sdt_prov_list, prov, prov_entry);
456 free(prov->name, M_SDT);
457 free(prov, M_SDT);
459 prov->sdt_refs--;
609 struct sdt_provider *prov, *tmp;
617 TAILQ_FOREACH_SAFE(prov, &sdt_prov_list, prov_entry, tmp) {
618 ret = dtrace_unregister(prov->id);
621 TAILQ_REMOVE(&sdt_prov_list, prov, prov_entry);
622 free(prov->name, M_SDT);
623 free(prov, M_SDT);