Lines Matching full:pit
852 dt_probe_iter(dt_idhash_t *ihp, dt_ident_t *idp, dt_probe_iter_t *pit) in dt_probe_iter() argument
856 if (!dt_gmatch(prp->pr_name, pit->pit_pat)) in dt_probe_iter()
859 (void) strlcpy(pit->pit_desc.dtpd_name, prp->pr_name, DTRACE_NAMELEN); in dt_probe_iter()
860 pit->pit_desc.dtpd_id = idp->di_id; in dt_probe_iter()
861 pit->pit_matches++; in dt_probe_iter()
863 return (pit->pit_func(pit->pit_hdl, &pit->pit_desc, pit->pit_arg)); in dt_probe_iter()
874 dt_probe_iter_t pit; in dtrace_probe_iter() local
877 bzero(&pit, sizeof (pit)); in dtrace_probe_iter()
878 pit.pit_hdl = dtp; in dtrace_probe_iter()
879 pit.pit_func = func; in dtrace_probe_iter()
880 pit.pit_arg = arg; in dtrace_probe_iter()
881 pit.pit_pat = pdp ? pdp->dtpd_name : NULL; in dtrace_probe_iter()
883 for (pit.pit_pvp = dt_list_next(&dtp->dt_provlist); in dtrace_probe_iter()
884 pit.pit_pvp != NULL; pit.pit_pvp = dt_list_next(pit.pit_pvp)) { in dtrace_probe_iter()
886 if (pit.pit_pvp->pv_flags & DT_PROVIDER_IMPL) in dtrace_probe_iter()
889 if (!dt_gmatch(pit.pit_pvp->pv_desc.dtvd_name, provider)) in dtrace_probe_iter()
892 (void) strlcpy(pit.pit_desc.dtpd_provider, in dtrace_probe_iter()
893 pit.pit_pvp->pv_desc.dtvd_name, DTRACE_PROVNAMELEN); in dtrace_probe_iter()
895 if ((rv = dt_idhash_iter(pit.pit_pvp->pv_probes, in dtrace_probe_iter()
896 (dt_idhash_f *)dt_probe_iter, &pit)) != 0) in dtrace_probe_iter()
916 pit.pit_matches++; in dtrace_probe_iter()
923 return (pit.pit_matches ? 0 : dt_set_errno(dtp, EDT_NOPROBE)); in dtrace_probe_iter()