Lines Matching refs:sdp

107 	sdt_probe_t *sdp, *old;  in sdt_provide_module()  local
152 sdp = kmem_zalloc(sizeof (sdt_probe_t), KM_SLEEP); in sdt_provide_module()
153 sdp->sdp_loadcnt = ctl->mod_loadcnt; in sdt_provide_module()
154 sdp->sdp_ctl = ctl; in sdt_provide_module()
155 sdp->sdp_name = nname; in sdt_provide_module()
156 sdp->sdp_namelen = len; in sdt_provide_module()
157 sdp->sdp_provider = prov; in sdt_provide_module()
172 sdp->sdp_next = old->sdp_next; in sdt_provide_module()
173 sdp->sdp_id = id; in sdt_provide_module()
174 old->sdp_next = sdp; in sdt_provide_module()
176 sdp->sdp_id = dtrace_probe_create(prov->sdtp_id, in sdt_provide_module()
177 modname, func, nname, 3, sdp); in sdt_provide_module()
182 sdp->sdp_hashnext = in sdt_provide_module()
184 sdt_probetab[SDT_ADDR2NDX(sdpd->sdpd_offset)] = sdp; in sdt_provide_module()
186 sdp->sdp_patchval = SDT_PATCHVAL; in sdt_provide_module()
187 sdp->sdp_patchpoint = (uint8_t *)sdpd->sdpd_offset; in sdt_provide_module()
188 sdp->sdp_savedval = *sdp->sdp_patchpoint; in sdt_provide_module()
196 sdt_probe_t *sdp = parg, *old, *last, *hash; in sdt_destroy() local
197 struct modctl *ctl = sdp->sdp_ctl; in sdt_destroy()
200 if (ctl != NULL && ctl->mod_loadcnt == sdp->sdp_loadcnt) { in sdt_destroy()
201 if ((ctl->mod_loadcnt == sdp->sdp_loadcnt && in sdt_destroy()
207 while (sdp != NULL) { in sdt_destroy()
208 old = sdp; in sdt_destroy()
213 ndx = SDT_ADDR2NDX(sdp->sdp_patchpoint); in sdt_destroy()
217 while (hash != sdp) { in sdt_destroy()
224 last->sdp_hashnext = sdp->sdp_hashnext; in sdt_destroy()
226 sdt_probetab[ndx] = sdp->sdp_hashnext; in sdt_destroy()
229 kmem_free(sdp->sdp_name, sdp->sdp_namelen); in sdt_destroy()
230 sdp = sdp->sdp_next; in sdt_destroy()
239 sdt_probe_t *sdp = parg; in sdt_enable() local
240 struct modctl *ctl = sdp->sdp_ctl; in sdt_enable()
252 sdp->sdp_name, ctl->mod_modname); in sdt_enable()
262 if (ctl->mod_loadcnt != sdp->sdp_loadcnt) { in sdt_enable()
266 sdp->sdp_name, ctl->mod_modname); in sdt_enable()
271 while (sdp != NULL) { in sdt_enable()
272 *sdp->sdp_patchpoint = sdp->sdp_patchval; in sdt_enable()
273 sdp = sdp->sdp_next; in sdt_enable()
283 sdt_probe_t *sdp = parg; in sdt_disable() local
284 struct modctl *ctl = sdp->sdp_ctl; in sdt_disable()
288 if (!ctl->mod_loaded || ctl->mod_loadcnt != sdp->sdp_loadcnt) in sdt_disable()
291 while (sdp != NULL) { in sdt_disable()
292 *sdp->sdp_patchpoint = sdp->sdp_savedval; in sdt_disable()
293 sdp = sdp->sdp_next; in sdt_disable()