Lines Matching defs:dtp

79 dt_pid_error(dtrace_hdl_t *dtp, dt_pcb_t *pcb, dt_proc_t *dpr,
86 dt_free(dtp, ftp);
97 dt_set_errmsg(dtp, dt_errtag(tag), pcb->pcb_region,
108 dtrace_hdl_t *dtp = pp->dpp_dtp;
128 if ((ftp = dt_alloc(dtp, sz)) == NULL) {
140 if (dt_pid_create_return_probe(pp->dpp_pr, dtp, ftp, symp,
142 return (dt_pid_error(dtp, pcb, dpr, ftp,
145 dtrace_errmsg(dtp, dtrace_errno(dtp))));
152 if (dt_pid_create_entry_probe(pp->dpp_pr, dtp, ftp, symp) < 0) {
153 return (dt_pid_error(dtp, pcb, dpr, ftp,
156 dtrace_errmsg(dtp, dtrace_errno(dtp))));
166 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_NAME,
171 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_OFF,
180 return (dt_pid_error(dtp, pcb, dpr, ftp,
183 dtrace_errmsg(dtp, dtrace_errno(dtp))));
187 return (dt_pid_error(dtp, pcb, dpr, ftp, D_PROC_ALIGN,
197 return (dt_pid_error(dtp, pcb, dpr, ftp,
200 dtrace_errmsg(dtp, dtrace_errno(dtp))));
208 dt_free(dtp, ftp);
252 dtrace_hdl_t *dtp = pp->dpp_dtp;
322 return (dt_pid_error(dtp, pcb, dpr, NULL,
440 dt_pid_create_pid_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp,
446 pp.dpp_dtp = dtp;
456 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_DYN,
476 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_LIB,
482 return (dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_NAME,
578 dt_pid_create_usdt_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp,
589 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_USDT,
603 dt_pid_get_pid(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp, dt_pcb_t *pcb,
615 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPROV,
624 (void) dt_pid_error(dtp, pcb, dpr, NULL, D_PROC_BADPID,
633 dt_pid_create_probes(dtrace_probedesc_t *pdp, dtrace_hdl_t *dtp, dt_pcb_t *pcb)
643 if ((pid = dt_pid_get_pid(pdp, dtp, pcb, NULL)) == -1)
646 if (dtp->dt_ftfd == -1) {
647 if (dtp->dt_fterr == ENOENT) {
648 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_NODEV,
651 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_NODEV,
653 strerror(dtp->dt_fterr));
662 if ((P = dt_proc_grab(dtp, pid, PGRAB_RDONLY | PGRAB_FORCE,
664 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_GRAB,
669 dpr = dt_proc_lookup(dtp, P, 0);
673 if ((err = dt_pid_create_pid_probes(pdp, dtp, pcb, dpr)) == 0) {
678 (void) dt_ioctl(dtp, DTRACEIOC_ENABLE, NULL);
682 dt_proc_release(dtp, P);
689 if ((P = dt_proc_grab(dtp, pid, 0, 1)) == NULL) {
690 (void) dt_pid_error(dtp, pcb, NULL, NULL, D_PROC_GRAB,
695 dpr = dt_proc_lookup(dtp, P, 0);
700 err = dt_pid_create_usdt_probes(pdp, dtp, pcb, dpr);
705 dt_proc_release(dtp, P);
712 dt_pid_create_probes_module(dtrace_hdl_t *dtp, dt_proc_t *dpr)
724 for (pgp = dt_list_next(&dtp->dt_programs); pgp != NULL;
731 pid = dt_pid_get_pid(pdp, dtp, NULL, dpr);
740 dt_pid_create_pid_probes(&pd, dtp, NULL, dpr) != 0)
748 dt_pid_create_usdt_probes(&pd, dtp, NULL, dpr) != 0)
758 (void) dt_ioctl(dtp, DTRACEIOC_ENABLE, NULL);
775 dt_pid_get_types(dtrace_hdl_t *dtp, const dtrace_probedesc_t *pdp,
805 dmp = dt_module_create(dtp, pdp->dtpd_provider);
811 if (dt_module_load(dtp, dmp) != 0) {
821 fp = dt_module_getctflib(dtp, dmp, pdp->dtpd_mod);
827 p = dt_proc_grab(dtp, dmp->dm_pid, 0, PGRAB_RDONLY | PGRAB_FORCE);
832 dt_proc_lock(dtp, p);
919 dt_proc_unlock(dtp, p);
920 dt_proc_release(dtp, p);