Home | History | Annotate | Download | only in common

Lines Matching defs:dtp

94 dt_pid_error(dtrace_hdl_t *dtp, dt_pcb_t *pcb, dt_proc_t *dpr,
101 dt_free(dtp, ftp);
112 dt_set_errmsg(dtp, dt_errtag(tag), pcb->pcb_region,
123 dtrace_hdl_t *dtp = pp->dpp_dtp;
147 if ((ftp = dt_alloc(dtp, sz)) == NULL) {
159 if (dt_pid_create_return_probe(pp->dpp_pr, dtp, ftp, symp,
161 return (dt_pid_error(dtp, pcb, dpr, ftp,
164 dtrace_errmsg(dtp, dtrace_errno(dtp))));
171 if (dt_pid_create_entry_probe(pp->dpp_pr, dtp, ftp, symp) < 0) {
172 return (dt_pid_error(dtp, pcb, dpr, ftp,
175 dtrace_errmsg(dtp, dtrace_errno(dtp))));
185 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_NAME,
190 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_OFF,
199 return (dt_pid_error(dtp, pcb, dpr, ftp,
202 dtrace_errmsg(dtp, dtrace_errno(dtp))));
206 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_ALIGN,
216 return (dt_pid_error(dtp, pcb, dpr, ftp,
219 dtrace_errmsg(dtp, dtrace_errno(dtp))));
227 dt_free(dtp, ftp);
271 dtrace_hdl_t *dtp = pp->dpp_dtp;
354 return (dt_pid_error(dtp, pcb, dpr, NULL,
488 dt_pid_create_pid_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp,
494 pp.dpp_dtp = dtp;
505 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_DYN,
526 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_LIB,
532 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_NAME,
645 dt_pid_create_usdt_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp,
655 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_USDT,
673 dt_pid_get_pid(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp, dt_pcb_t *pcb,
685 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPROV,
694 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPID,
703 dt_pid_create_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp, dt_pcb_t *pcb)
713 if ((pid = dt_pid_get_pid(pdp, dtp, pcb, NULL)) == -1)
716 if (dtp->dt_ftfd == -1) {
717 if (dtp->dt_fterr == ENOENT) {
718 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_NODEV,
721 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_NODEV,
723 strerror(dtp->dt_fterr));
733 if ((P = dt_proc_grab(dtp, pid, 0, 1)) == NULL)
735 if ((P = dt_proc_grab(dtp, pid, PGRAB_RDONLY | PGRAB_FORCE,
739 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_GRAB,
744 dpr = dt_proc_lookup(dtp, P, 0);
748 if ((err = dt_pid_create_pid_probes(pdp, dtp, pcb, dpr)) == 0) {
753 (void) dt_ioctl(dtp, DTRACEIOC_ENABLE, NULL);
757 dt_proc_release(dtp, P);
764 if ((P = dt_proc_grab(dtp, pid, 0, 1)) == NULL) {
765 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_GRAB,
770 dpr = dt_proc_lookup(dtp, P, 0);
775 err = dt_pid_create_usdt_probes(pdp, dtp, pcb, dpr);
780 dt_proc_release(dtp, P);
787 dt_pid_create_probes_module(dtrace_hdl_t *dtp, dt_proc_t *dpr)
800 for (pgp = dt_list_next(&dtp->dt_programs); pgp != NULL;
807 pid = dt_pid_get_pid(pdp, dtp, NULL, dpr);
816 dt_pid_create_pid_probes(&pd, dtp, NULL, dpr) != 0)
824 dt_pid_create_usdt_probes(&pd, dtp, NULL, dpr) != 0)
836 (void) dt_ioctl(dtp, DTRACEIOC_ENABLE, &args);
853 dt_pid_get_types(dtrace_hdl_t *dtp, const dtrace_probedesc_t *pdp,
883 dmp = dt_module_create(dtp, pdp->dtpd_provider);
889 if (dt_module_load(dtp, dmp) != 0) {
899 fp = dt_module_getctflib(dtp, dmp, pdp->dtpd_mod);
905 p = dt_proc_grab(dtp, dmp->dm_pid, 0, PGRAB_RDONLY | PGRAB_FORCE);
910 dt_proc_lock(dtp, p);
997 dt_proc_unlock(dtp, p);
998 dt_proc_release(dtp, p);