Lines Matching defs:pit
800 dt_probe_iter(dt_idhash_t *ihp, dt_ident_t *idp, dt_probe_iter_t *pit)
804 if (!dt_gmatch(prp->pr_name, pit->pit_pat))
807 (void) strlcpy(pit->pit_desc.dtpd_name, prp->pr_name, DTRACE_NAMELEN);
808 pit->pit_desc.dtpd_id = idp->di_id;
809 pit->pit_matches++;
811 return (pit->pit_func(pit->pit_hdl, &pit->pit_desc, pit->pit_arg));
822 dt_probe_iter_t pit;
825 bzero(&pit, sizeof (pit));
826 pit.pit_hdl = dtp;
827 pit.pit_func = func;
828 pit.pit_arg = arg;
829 pit.pit_pat = pdp ? pdp->dtpd_name : NULL;
831 for (pit.pit_pvp = dt_list_next(&dtp->dt_provlist);
832 pit.pit_pvp != NULL; pit.pit_pvp = dt_list_next(pit.pit_pvp)) {
834 if (pit.pit_pvp->pv_flags & DT_PROVIDER_IMPL)
837 if (!dt_gmatch(pit.pit_pvp->pv_desc.dtvd_name, provider))
840 (void) strlcpy(pit.pit_desc.dtpd_provider,
841 pit.pit_pvp->pv_desc.dtvd_name, DTRACE_PROVNAMELEN);
843 if ((rv = dt_idhash_iter(pit.pit_pvp->pv_probes,
844 (dt_idhash_f *)dt_probe_iter, &pit)) != 0)
864 pit.pit_matches++;
871 return (pit.pit_matches ? 0 : dt_set_errno(dtp, EDT_NOPROBE));