Lines Matching refs:sdpd
84 sdt_probedesc_t *sdpd; in __sdt_provide_module() local
99 if (!ctl || ctl->mod_sdtprobecnt != 0 || (sdpd = ctl->mod_sdtdesc) == NULL) { in __sdt_provide_module()
103 for (sdpd = ctl->mod_sdtdesc; sdpd != NULL; sdpd = sdpd->sdpd_next) { in __sdt_provide_module()
108 if (strcmp(prov->sdtp_prefix, sdpd->sdpd_prov) == 0) { in __sdt_provide_module()
114 printf("Ignoring probes from unsupported provider %s\n", sdpd->sdpd_prov); in __sdt_provide_module()
118 if (sdpd->sdpd_func == NULL) { in __sdt_provide_module()
123 printf("Ignoring probe %s (no symbol name)\n", sdpd->sdpd_name); in __sdt_provide_module()
130 sdp->sdp_name = kmem_alloc(strlen(sdpd->sdpd_name) + 1, KM_SLEEP); in __sdt_provide_module()
131 (void) strlcpy(sdp->sdp_name, sdpd->sdpd_name, strlen(sdpd->sdpd_name) + 1); in __sdt_provide_module()
132 sdp->sdp_namelen = strlen(sdpd->sdpd_name) + 1; in __sdt_provide_module()
139 sdpd->sdpd_func, sdp->sdp_name)) != DTRACE_IDNONE) { in __sdt_provide_module()
148 modname, sdpd->sdpd_func, sdp->sdp_name, SDT_AFRAMES, sdp); in __sdt_provide_module()
154 printf("__sdt_provide_module: sdpd=0x%p sdp=0x%p name=%s, id=%d\n", sdpd, sdp, in __sdt_provide_module()
159 sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)]; in __sdt_provide_module()
160 sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)] = sdp; in __sdt_provide_module()
163 sdp->sdp_patchpoint = (sdt_instr_t *)sdpd->sdpd_offset; in __sdt_provide_module()
628 sdt_probedesc_t *sdpd = kmem_alloc(sizeof(sdt_probedesc_t), KM_SLEEP); in sdt_load_machsect() local
631 sdpd->sdpd_name = sdt_strdup_name(sdtdef->dsd_name); in sdt_load_machsect()
632 sdpd->sdpd_namelen = strlen(sdtdef->dsd_name) + 1; in sdt_load_machsect()
635 sdpd->sdpd_prov = sdtdef->dsd_prov; in sdt_load_machsect()
641 sdpd->sdpd_func = NULL; in sdt_load_machsect()
673 sdpd->sdpd_func = kmem_alloc(len, KM_SLEEP); in sdt_load_machsect()
674 (void) strlcpy(sdpd->sdpd_func, funcname, len); in sdt_load_machsect()
678 sdpd->sdpd_offset = sdtdef->dsd_addr & ~0x1LU; in sdt_load_machsect()
680 sdpd->sdpd_offset = sdtdef->dsd_addr; in sdt_load_machsect()
683 sdpd->sdpd_next = (sdt_probedesc_t *)ctl->mod_sdtdesc; in sdt_load_machsect()
684 ctl->mod_sdtdesc = sdpd; in sdt_load_machsect()
717 sdt_probedesc_t *sdpd; in sdt_provide_module_user_syms() local
726 for (sdpd = ctl->mod_sdtdesc; sdpd != NULL; sdpd = sdpd->sdpd_next) { in sdt_provide_module_user_syms()
727 ASSERT(sdpd->sdpd_func == NULL); in sdt_provide_module_user_syms()
753 if ((symbol->dtsym_addr <= sdpd->sdpd_offset) && in sdt_provide_module_user_syms()
754 (sdpd->sdpd_offset < symbol->dtsym_addr + symbol->dtsym_size)) { in sdt_provide_module_user_syms()
761 sdpd->sdpd_func = kmem_alloc(len, KM_SLEEP); in sdt_provide_module_user_syms()
762 (void) strlcpy(sdpd->sdpd_func, funcname, len); in sdt_provide_module_user_syms()
800 sdt_probedesc_t *sdpd = ctl->mod_sdtdesc; in sdt_provide_module() local
801 while (sdpd) { in sdt_provide_module()
802 sdt_probedesc_t *this_sdpd = sdpd; in sdt_provide_module()
803 kmem_free((void *)sdpd->sdpd_name, sdpd->sdpd_namelen); in sdt_provide_module()
804 if (sdpd->sdpd_func) { in sdt_provide_module()
805 kmem_free((void *)sdpd->sdpd_func, strlen(sdpd->sdpd_func) + 1); in sdt_provide_module()
807 sdpd = sdpd->sdpd_next; in sdt_provide_module()