Lines Matching refs:dtp
140 dt_proc_bpmatch(dtrace_hdl_t *dtp, dt_proc_t *dpr) in dt_proc_bpmatch() argument
162 dbp->dbp_func(dtp, dpr, dbp->dbp_data); in dt_proc_bpmatch()
201 dt_proc_notify(dtrace_hdl_t *dtp, dt_proc_hash_t *dph, dt_proc_t *dpr, in dt_proc_notify() argument
204 dt_proc_notify_t *dprn = dt_alloc(dtp, sizeof (dt_proc_notify_t)); in dt_proc_notify()
261 dt_proc_bpmain(dtrace_hdl_t *dtp, dt_proc_t *dpr, const char *fname) in dt_proc_bpmain() argument
268 dt_proc_rdevent(dtrace_hdl_t *dtp, dt_proc_t *dpr, const char *evname) in dt_proc_rdevent() argument
288 if (dt_pid_create_probes_module(dtp, dpr) != 0) in dt_proc_rdevent()
289 dt_proc_notify(dtp, dtp->dt_procs, dpr, in dt_proc_rdevent()
465 dtrace_hdl_t *dtp = datap->dpcd_hdl; in dt_proc_control() local
467 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_control()
590 dt_proc_bpmatch(dtp, dpr); in dt_proc_control()
633 dt_proc_notify(dtp, dph, dpr, NULL); in dt_proc_control()
654 dt_proc_error(dtrace_hdl_t *dtp, dt_proc_t *dpr, const char *format, ...) in dt_proc_error() argument
659 dt_set_errmsg(dtp, NULL, NULL, NULL, 0, format, ap); in dt_proc_error()
665 dt_free(dtp, dpr); in dt_proc_error()
666 (void) dt_set_errno(dtp, EDT_COMPILER); in dt_proc_error()
671 dt_proc_lookup(dtrace_hdl_t *dtp, struct ps_prochandle *P, int remove) in dt_proc_lookup() argument
673 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_lookup()
694 dt_proc_destroy(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dt_proc_destroy() argument
696 dt_proc_t *dpr = dt_proc_lookup(dtp, P, B_FALSE); in dt_proc_destroy()
697 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_destroy()
760 (void) dt_proc_lookup(dtp, P, B_TRUE); in dt_proc_destroy()
766 dt_free(dtp, npr); in dt_proc_destroy()
785 dt_free(dtp, dpr); in dt_proc_destroy()
789 dt_proc_create_thread(dtrace_hdl_t *dtp, dt_proc_t *dpr, uint_t stop) in dt_proc_create_thread() argument
806 data.dpcd_hdl = dtp; in dt_proc_create_thread()
865 dt_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv) in dt_proc_create() argument
867 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_create()
871 if ((dpr = dt_zalloc(dtp, sizeof (dt_proc_t))) == NULL) in dt_proc_create()
877 dpr->dpr_proc = Pxcreate(file, argv, dtp->dt_proc_env, &err, NULL, 0); in dt_proc_create()
879 return (dt_proc_error(dtp, dpr, in dt_proc_create()
883 dpr->dpr_hdl = dtp; in dt_proc_create()
889 if (dt_proc_create_thread(dtp, dpr, dtp->dt_prcmode) != 0) in dt_proc_create()
903 dt_proc_grab(dtrace_hdl_t *dtp, pid_t pid, int flags, int nomonitor) in dt_proc_grab() argument
905 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_grab()
939 if ((dpr = dt_zalloc(dtp, sizeof (dt_proc_t))) == NULL) in dt_proc_grab()
946 return (dt_proc_error(dtp, dpr, in dt_proc_grab()
950 dpr->dpr_hdl = dtp; in dt_proc_grab()
971 dt_proc_destroy(dtp, opr->dpr_proc); in dt_proc_grab()
983 } else if (dt_proc_create_thread(dtp, dpr, DT_PROC_STOP_GRAB) != 0) in dt_proc_grab()
997 dt_proc_release(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dt_proc_release() argument
999 dt_proc_t *dpr = dt_proc_lookup(dtp, P, B_FALSE); in dt_proc_release()
1000 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_release()
1007 dt_proc_destroy(dtp, P); in dt_proc_release()
1011 dt_proc_continue(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dt_proc_continue() argument
1013 dt_proc_t *dpr = dt_proc_lookup(dtp, P, B_FALSE); in dt_proc_continue()
1026 dt_proc_lock(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dt_proc_lock() argument
1028 dt_proc_t *dpr = dt_proc_lookup(dtp, P, B_FALSE); in dt_proc_lock()
1034 dt_proc_unlock(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dt_proc_unlock() argument
1036 dt_proc_t *dpr = dt_proc_lookup(dtp, P, B_FALSE); in dt_proc_unlock()
1042 dt_proc_init(dtrace_hdl_t *dtp) in dt_proc_init() argument
1052 if ((dtp->dt_procs = dt_zalloc(dtp, sizeof (dt_proc_hash_t) + in dt_proc_init()
1056 (void) pthread_mutex_init(&dtp->dt_procs->dph_lock, NULL); in dt_proc_init()
1057 (void) pthread_cond_init(&dtp->dt_procs->dph_cv, NULL); in dt_proc_init()
1059 dtp->dt_procs->dph_hashlen = _dtrace_pidbuckets; in dt_proc_init()
1060 dtp->dt_procs->dph_lrulim = _dtrace_pidlrulim; in dt_proc_init()
1071 if ((dtp->dt_proc_env = dt_zalloc(dtp, sizeof (char *) * i)) == NULL) in dt_proc_init()
1075 if ((dtp->dt_proc_env[i] = strdup(*p)) == NULL) in dt_proc_init()
1079 if ((dtp->dt_proc_env[i] = strdup(*p)) == NULL) in dt_proc_init()
1087 dt_free(dtp, dtp->dt_proc_env[i]); in dt_proc_init()
1089 dt_free(dtp, dtp->dt_proc_env); in dt_proc_init()
1090 dtp->dt_proc_env = NULL; in dt_proc_init()
1094 dt_proc_fini(dtrace_hdl_t *dtp) in dt_proc_fini() argument
1096 dt_proc_hash_t *dph = dtp->dt_procs; in dt_proc_fini()
1101 dt_proc_destroy(dtp, dpr->dpr_proc); in dt_proc_fini()
1103 dtp->dt_procs = NULL; in dt_proc_fini()
1104 dt_free(dtp, dph); in dt_proc_fini()
1106 for (p = dtp->dt_proc_env; *p != NULL; p++) in dt_proc_fini()
1107 dt_free(dtp, *p); in dt_proc_fini()
1109 dt_free(dtp, dtp->dt_proc_env); in dt_proc_fini()
1110 dtp->dt_proc_env = NULL; in dt_proc_fini()
1114 dtrace_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv) in dtrace_proc_create() argument
1116 dt_ident_t *idp = dt_idhash_lookup(dtp->dt_macros, "target"); in dtrace_proc_create()
1117 struct ps_prochandle *P = dt_proc_create(dtp, file, argv); in dtrace_proc_create()
1126 dtrace_proc_grab(dtrace_hdl_t *dtp, pid_t pid, int flags) in dtrace_proc_grab() argument
1128 dt_ident_t *idp = dt_idhash_lookup(dtp->dt_macros, "target"); in dtrace_proc_grab()
1129 struct ps_prochandle *P = dt_proc_grab(dtp, pid, flags, 0); in dtrace_proc_grab()
1138 dtrace_proc_release(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dtrace_proc_release() argument
1140 dt_proc_release(dtp, P); in dtrace_proc_release()
1144 dtrace_proc_continue(dtrace_hdl_t *dtp, struct ps_prochandle *P) in dtrace_proc_continue() argument
1146 dt_proc_continue(dtp, P); in dtrace_proc_continue()