Lines Matching refs:sdp

99 sdt_initialize(sdt_probe_t *sdp, uint32_t **trampoline)  in sdt_initialize()  argument
105 if (sdp->sdp_id > (uint32_t)SDT_SIMM13_MAX) { in sdt_initialize()
106 *instr++ = SDT_SETHI(sdp->sdp_id, SDT_REG_O0); in sdt_initialize()
107 *instr++ = SDT_ORLO(SDT_REG_O0, sdp->sdp_id, SDT_REG_O0); in sdt_initialize()
109 *instr++ = SDT_ORSIMM13(SDT_REG_G0, sdp->sdp_id, SDT_REG_O0); in sdt_initialize()
133 sdt_probe_t *sdp, *old; in sdt_provide_module() local
211 sdp = kmem_zalloc(sizeof (sdt_probe_t), KM_SLEEP); in sdt_provide_module()
212 sdp->sdp_loadcnt = ctl->mod_loadcnt; in sdt_provide_module()
213 sdp->sdp_primary = primary; in sdt_provide_module()
214 sdp->sdp_ctl = ctl; in sdt_provide_module()
215 sdp->sdp_name = nname; in sdt_provide_module()
216 sdp->sdp_namelen = len; in sdt_provide_module()
217 sdp->sdp_provider = prov; in sdt_provide_module()
233 sdp->sdp_next = old->sdp_next; in sdt_provide_module()
234 sdp->sdp_id = id; in sdt_provide_module()
235 old->sdp_next = sdp; in sdt_provide_module()
237 sdp->sdp_id = dtrace_probe_create(prov->sdtp_id, in sdt_provide_module()
238 modname, func, nname, 1, sdp); in sdt_provide_module()
243 sdp->sdp_patchval = SDT_CALL((uintptr_t)mp->text + in sdt_provide_module()
245 sdp->sdp_patchpoint = (uint32_t *)((uintptr_t)mp->textwin + in sdt_provide_module()
247 sdp->sdp_savedval = *sdp->sdp_patchpoint; in sdt_provide_module()
248 sdt_initialize(sdp, &tab); in sdt_provide_module()
256 sdt_probe_t *sdp = parg, *old; in sdt_destroy() local
257 struct modctl *ctl = sdp->sdp_ctl; in sdt_destroy()
259 if (ctl != NULL && ctl->mod_loadcnt == sdp->sdp_loadcnt) { in sdt_destroy()
260 if ((ctl->mod_loadcnt == sdp->sdp_loadcnt && in sdt_destroy()
261 ctl->mod_loaded) || sdp->sdp_primary) { in sdt_destroy()
266 while (sdp != NULL) { in sdt_destroy()
267 old = sdp; in sdt_destroy()
268 kmem_free(sdp->sdp_name, sdp->sdp_namelen); in sdt_destroy()
269 sdp = sdp->sdp_next; in sdt_destroy()
278 sdt_probe_t *sdp = parg; in sdt_enable() local
279 struct modctl *ctl = sdp->sdp_ctl; in sdt_enable()
287 if (!sdp->sdp_primary && !ctl->mod_loaded) { in sdt_enable()
291 sdp->sdp_name, ctl->mod_modname); in sdt_enable()
301 if (ctl->mod_loadcnt != sdp->sdp_loadcnt) { in sdt_enable()
305 sdp->sdp_name, ctl->mod_modname); in sdt_enable()
310 while (sdp != NULL) { in sdt_enable()
311 *sdp->sdp_patchpoint = sdp->sdp_patchval; in sdt_enable()
312 sdp = sdp->sdp_next; in sdt_enable()
323 sdt_probe_t *sdp = parg; in sdt_disable() local
324 struct modctl *ctl = sdp->sdp_ctl; in sdt_disable()
329 if ((!sdp->sdp_primary && !ctl->mod_loaded) || in sdt_disable()
330 (ctl->mod_loadcnt != sdp->sdp_loadcnt)) in sdt_disable()
333 while (sdp != NULL) { in sdt_disable()
334 *sdp->sdp_patchpoint = sdp->sdp_savedval; in sdt_disable()
335 sdp = sdp->sdp_next; in sdt_disable()