Lines Matching full:probe
138 sdt_create_probe(struct sdt_probe *probe) in sdt_create_probe() argument
149 if (probe->version != (int)sizeof(*probe)) { in sdt_create_probe()
150 printf("ignoring probe %p, version %u expected %u\n", in sdt_create_probe()
151 probe, probe->version, (int)sizeof(*probe)); in sdt_create_probe()
156 if (strcmp(prov->name, probe->prov->name) == 0) in sdt_create_probe()
159 KASSERT(prov != NULL, ("probe defined without a provider")); in sdt_create_probe()
162 if (*probe->mod == 0) { in sdt_create_probe()
163 len = strlcpy(mod, probe->sdtp_lf->filename, sizeof(mod)); in sdt_create_probe()
167 strlcpy(mod, probe->mod, sizeof(mod)); in sdt_create_probe()
175 strlcpy(func, probe->func, sizeof(func)); in sdt_create_probe()
179 from = probe->name; in sdt_create_probe()
204 (void)dtrace_probe_create(prov->id, mod, func, name, aframes, probe); in sdt_create_probe()
218 struct sdt_probe *probe; member
242 STAILQ_FOREACH(tp, &arg->probe->tracepoint_list, tracepoint_entry) { in sdt_probe_update_cb()
253 sdt_probe_update(struct sdt_probe *probe, bool enable) in sdt_probe_update() argument
258 cbarg.probe = probe; in sdt_probe_update()
270 struct sdt_probe *probe; in sdt_enable() local
272 probe = parg; in sdt_enable()
274 probe->id = id; in sdt_enable()
275 probe->sdtp_lf->nenabled++; in sdt_enable()
276 if (strcmp(probe->prov->name, "lockstat") == 0) { in sdt_enable()
285 sdt_probe_update(probe, true); in sdt_enable()
291 struct sdt_probe *probe; in sdt_disable() local
293 probe = parg; in sdt_disable()
294 KASSERT(probe->sdtp_lf->nenabled > 0, ("no probes enabled")); in sdt_disable()
296 sdt_probe_update(probe, false); in sdt_disable()
301 if (strcmp(probe->prov->name, "lockstat") == 0) { in sdt_disable()
306 probe->id = 0; in sdt_disable()
307 probe->sdtp_lf->nenabled--; in sdt_disable()
314 struct sdt_probe *probe = parg; in sdt_getargdesc() local
316 if (desc->dtargd_ndx >= probe->n_args) { in sdt_getargdesc()
321 TAILQ_FOREACH(argtype, &probe->argtype_list, argtype_entry) { in sdt_getargdesc()
381 for (struct sdt_probe **probe = p_begin; probe < p_end; in sdt_kld_load_probes() local
382 probe++) { in sdt_kld_load_probes()
383 (*probe)->sdtp_lf = lf; in sdt_kld_load_probes()
384 sdt_create_probe(*probe); in sdt_kld_load_probes()
385 TAILQ_INIT(&(*probe)->argtype_list); in sdt_kld_load_probes()
386 STAILQ_INIT(&(*probe)->tracepoint_list); in sdt_kld_load_probes()
394 (*argtype)->probe->n_args++; in sdt_kld_load_probes()
395 TAILQ_INSERT_TAIL(&(*argtype)->probe->argtype_list, in sdt_kld_load_probes()
408 tp->probe->prov->name, tp->probe->mod, in sdt_kld_load_probes()
409 tp->probe->func, tp->probe->name); in sdt_kld_load_probes()
412 STAILQ_INSERT_TAIL(&tp->probe->tracepoint_list, tp, in sdt_kld_load_probes()
483 tp2 = STAILQ_FIRST(&tp->probe->tracepoint_list); in sdt_kld_unload_probes()
485 STAILQ_REMOVE_HEAD(&tp->probe->tracepoint_list, in sdt_kld_unload_probes()
497 &tp->probe->tracepoint_list, in sdt_kld_unload_probes()
515 &(*argtype)->probe->argtype_list, argtype_entry) { in sdt_kld_unload_probes()
517 (*argtype)->probe->n_args--; in sdt_kld_unload_probes()
519 &(*argtype)->probe->argtype_list, in sdt_kld_unload_probes()
529 for (struct sdt_probe **probe = p_begin; probe < p_end; in sdt_kld_unload_probes() local
530 probe++) { in sdt_kld_unload_probes()
531 if ((*probe)->sdtp_lf == lf) { in sdt_kld_unload_probes()
532 if (!TAILQ_EMPTY(&(*probe)->argtype_list)) in sdt_kld_unload_probes()
534 if (!STAILQ_EMPTY(&(*probe)->tracepoint_list)) in sdt_kld_unload_probes()
538 * Don't destroy the probe as there in sdt_kld_unload_probes()
540 * same probe in different modules. in sdt_kld_unload_probes()