Lines Matching refs:dof
8669 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provide_one() local
8684 str_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8685 provider->dofpv_strtab * dof->dofh_secsize); in dtrace_helper_provide_one()
8686 prb_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8687 provider->dofpv_probes * dof->dofh_secsize); in dtrace_helper_provide_one()
8688 arg_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8689 provider->dofpv_prargs * dof->dofh_secsize); in dtrace_helper_provide_one()
8690 off_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8691 provider->dofpv_proffs * dof->dofh_secsize); in dtrace_helper_provide_one()
8701 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_helper_provide_one()
8703 enoff_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8704 provider->dofpv_prenoffs * dof->dofh_secsize); in dtrace_helper_provide_one()
8754 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provide() local
8759 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_provide()
8761 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_provide()
8783 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provider_remove_one() local
8792 str_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provider_remove_one()
8793 provider->dofpv_strtab * dof->dofh_secsize); in dtrace_helper_provider_remove_one()
8811 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provider_remove() local
8816 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_provider_remove()
8818 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_provider_remove()
12191 dtrace_dof_error(dof_hdr_t *dof, const char *str) in dtrace_dof_error() argument
12209 dof_hdr_t *dof; in dtrace_dof_create() local
12218 dof = kmem_zalloc(len, KM_SLEEP); in dtrace_dof_create()
12219 dof->dofh_ident[DOF_ID_MAG0] = DOF_MAG_MAG0; in dtrace_dof_create()
12220 dof->dofh_ident[DOF_ID_MAG1] = DOF_MAG_MAG1; in dtrace_dof_create()
12221 dof->dofh_ident[DOF_ID_MAG2] = DOF_MAG_MAG2; in dtrace_dof_create()
12222 dof->dofh_ident[DOF_ID_MAG3] = DOF_MAG_MAG3; in dtrace_dof_create()
12224 dof->dofh_ident[DOF_ID_MODEL] = DOF_MODEL_NATIVE; in dtrace_dof_create()
12225 dof->dofh_ident[DOF_ID_ENCODING] = DOF_ENCODE_NATIVE; in dtrace_dof_create()
12226 dof->dofh_ident[DOF_ID_VERSION] = DOF_VERSION; in dtrace_dof_create()
12227 dof->dofh_ident[DOF_ID_DIFVERS] = DIF_VERSION; in dtrace_dof_create()
12228 dof->dofh_ident[DOF_ID_DIFIREG] = DIF_DIR_NREGS; in dtrace_dof_create()
12229 dof->dofh_ident[DOF_ID_DIFTREG] = DIF_DTR_NREGS; in dtrace_dof_create()
12231 dof->dofh_flags = 0; in dtrace_dof_create()
12232 dof->dofh_hdrsize = sizeof (dof_hdr_t); in dtrace_dof_create()
12233 dof->dofh_secsize = sizeof (dof_sec_t); in dtrace_dof_create()
12234 dof->dofh_secnum = 1; /* only DOF_SECT_OPTDESC */ in dtrace_dof_create()
12235 dof->dofh_secoff = sizeof (dof_hdr_t); in dtrace_dof_create()
12236 dof->dofh_loadsz = len; in dtrace_dof_create()
12237 dof->dofh_filesz = len; in dtrace_dof_create()
12238 dof->dofh_pad = 0; in dtrace_dof_create()
12243 sec = (dof_sec_t *)((uintptr_t)dof + sizeof (dof_hdr_t)); in dtrace_dof_create()
12252 sec->dofs_offset = (uintptr_t)opt - (uintptr_t)dof; in dtrace_dof_create()
12261 return (dof); in dtrace_dof_create()
12267 dof_hdr_t hdr, *dof; in dtrace_dof_copyin() local
12296 dof = kmem_alloc(hdr.dofh_loadsz, KM_SLEEP); in dtrace_dof_copyin()
12298 if (copyin((void *)uarg, dof, hdr.dofh_loadsz) != 0 || in dtrace_dof_copyin()
12299 dof->dofh_loadsz != hdr.dofh_loadsz) { in dtrace_dof_copyin()
12300 kmem_free(dof, hdr.dofh_loadsz); in dtrace_dof_copyin()
12305 return (dof); in dtrace_dof_copyin()
12314 dof_hdr_t *dof; in dtrace_dof_property() local
12346 dof = kmem_alloc(loadsz, KM_SLEEP); in dtrace_dof_property()
12347 bcopy(buf, dof, loadsz); in dtrace_dof_property()
12350 return (dof); in dtrace_dof_property()
12354 dtrace_dof_destroy(dof_hdr_t *dof) in dtrace_dof_destroy() argument
12356 kmem_free(dof, dof->dofh_loadsz); in dtrace_dof_destroy()
12366 dtrace_dof_sect(dof_hdr_t *dof, uint32_t type, dof_secidx_t i) in dtrace_dof_sect() argument
12369 ((uintptr_t)dof + dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_sect()
12371 if (i >= dof->dofh_secnum) { in dtrace_dof_sect()
12372 dtrace_dof_error(dof, "referenced section index is invalid"); in dtrace_dof_sect()
12377 dtrace_dof_error(dof, "referenced section is not loadable"); in dtrace_dof_sect()
12382 dtrace_dof_error(dof, "referenced section is the wrong type"); in dtrace_dof_sect()
12390 dtrace_dof_probedesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_probedesc_t *desc) in dtrace_dof_probedesc() argument
12394 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_probedesc()
12399 dtrace_dof_error(dof, "invalid probe section"); in dtrace_dof_probedesc()
12404 dtrace_dof_error(dof, "bad alignment in probe description"); in dtrace_dof_probedesc()
12408 if (sec->dofs_offset + sizeof (dof_probedesc_t) > dof->dofh_loadsz) { in dtrace_dof_probedesc()
12409 dtrace_dof_error(dof, "truncated probe description"); in dtrace_dof_probedesc()
12414 strtab = dtrace_dof_sect(dof, DOF_SECT_STRTAB, probe->dofp_strtab); in dtrace_dof_probedesc()
12423 dtrace_dof_error(dof, "corrupt probe provider"); in dtrace_dof_probedesc()
12432 dtrace_dof_error(dof, "corrupt probe module"); in dtrace_dof_probedesc()
12440 dtrace_dof_error(dof, "corrupt probe function"); in dtrace_dof_probedesc()
12448 dtrace_dof_error(dof, "corrupt probe name"); in dtrace_dof_probedesc()
12459 dtrace_dof_difo(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_difo() argument
12465 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_difo()
12497 dtrace_dof_error(dof, "invalid DIFO header section"); in dtrace_dof_difo()
12502 dtrace_dof_error(dof, "bad alignment in DIFO header"); in dtrace_dof_difo()
12508 dtrace_dof_error(dof, "bad size in DIFO header"); in dtrace_dof_difo()
12523 if ((subsec = dtrace_dof_sect(dof, DOF_SECT_NONE, in dtrace_dof_difo()
12528 dtrace_dof_error(dof, "exceeds maximum size"); in dtrace_dof_difo()
12539 dtrace_dof_error(dof, "section not loaded"); in dtrace_dof_difo()
12544 dtrace_dof_error(dof, "bad alignment"); in dtrace_dof_difo()
12552 dtrace_dof_error(dof, difo[i].msg); in dtrace_dof_difo()
12557 dtrace_dof_error(dof, "entry size mismatch"); in dtrace_dof_difo()
12563 dtrace_dof_error(dof, "corrupt entry size"); in dtrace_dof_difo()
12584 dtrace_dof_error(dof, "unrecognized DIFO subsection"); in dtrace_dof_difo()
12593 dtrace_dof_error(dof, "missing DIF text"); in dtrace_dof_difo()
12633 dtrace_dof_predicate(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_predicate() argument
12638 if ((dp = dtrace_dof_difo(dof, sec, vstate, cr)) == NULL) in dtrace_dof_predicate()
12645 dtrace_dof_actdesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_actdesc() argument
12652 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_actdesc()
12657 dtrace_dof_error(dof, "invalid action section"); in dtrace_dof_actdesc()
12661 if (sec->dofs_offset + sizeof (dof_actdesc_t) > dof->dofh_loadsz) { in dtrace_dof_actdesc()
12662 dtrace_dof_error(dof, "truncated action description"); in dtrace_dof_actdesc()
12667 dtrace_dof_error(dof, "bad alignment in action description"); in dtrace_dof_actdesc()
12672 dtrace_dof_error(dof, "section entry size exceeds total size"); in dtrace_dof_actdesc()
12677 dtrace_dof_error(dof, "bad entry size in action description"); in dtrace_dof_actdesc()
12682 dtrace_dof_error(dof, "actions exceed dtrace_actions_max"); in dtrace_dof_actdesc()
12706 if ((strtab = dtrace_dof_sect(dof, in dtrace_dof_actdesc()
12710 str = (char *)((uintptr_t)dof + in dtrace_dof_actdesc()
12719 dtrace_dof_error(dof, "bogus format string"); in dtrace_dof_actdesc()
12724 dtrace_dof_error(dof, "empty format string"); in dtrace_dof_actdesc()
12755 if ((difosec = dtrace_dof_sect(dof, in dtrace_dof_actdesc()
12759 act->dtad_difo = dtrace_dof_difo(dof, difosec, vstate, cr); in dtrace_dof_actdesc()
12778 dtrace_dof_ecbdesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_ecbdesc() argument
12787 dtrace_dof_error(dof, "truncated ECB description"); in dtrace_dof_ecbdesc()
12792 dtrace_dof_error(dof, "bad alignment in ECB description"); in dtrace_dof_ecbdesc()
12796 ecb = (dof_ecbdesc_t *)((uintptr_t)dof + (uintptr_t)sec->dofs_offset); in dtrace_dof_ecbdesc()
12797 sec = dtrace_dof_sect(dof, DOF_SECT_PROBEDESC, ecb->dofe_probes); in dtrace_dof_ecbdesc()
12806 if (dtrace_dof_probedesc(dof, sec, desc) == NULL) in dtrace_dof_ecbdesc()
12810 if ((sec = dtrace_dof_sect(dof, in dtrace_dof_ecbdesc()
12814 if ((pred = dtrace_dof_predicate(dof, sec, vstate, cr)) == NULL) in dtrace_dof_ecbdesc()
12821 if ((sec = dtrace_dof_sect(dof, in dtrace_dof_ecbdesc()
12825 ep->dted_action = dtrace_dof_actdesc(dof, sec, vstate, cr); in dtrace_dof_ecbdesc()
12847 dtrace_dof_relocate(dof_hdr_t *dof, dof_sec_t *sec, uint64_t ubase) in dtrace_dof_relocate() argument
12849 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_relocate()
12858 dtrace_dof_error(dof, "invalid relocation header"); in dtrace_dof_relocate()
12862 ss = dtrace_dof_sect(dof, DOF_SECT_STRTAB, dofr->dofr_strtab); in dtrace_dof_relocate()
12863 rs = dtrace_dof_sect(dof, DOF_SECT_RELTAB, dofr->dofr_relsec); in dtrace_dof_relocate()
12864 ts = dtrace_dof_sect(dof, DOF_SECT_NONE, dofr->dofr_tgtsec); in dtrace_dof_relocate()
12871 dtrace_dof_error(dof, "invalid relocation section"); in dtrace_dof_relocate()
12887 dtrace_dof_error(dof, "bad relocation offset"); in dtrace_dof_relocate()
12892 dtrace_dof_error(dof, "misaligned setx relo"); in dtrace_dof_relocate()
12899 dtrace_dof_error(dof, "invalid relocation type"); in dtrace_dof_relocate()
12916 dtrace_dof_slurp(dof_hdr_t *dof, dtrace_vstate_t *vstate, cred_t *cr, in dtrace_dof_slurp() argument
12919 uint64_t len = dof->dofh_loadsz, seclen; in dtrace_dof_slurp()
12920 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_slurp()
12926 ASSERT(dof->dofh_loadsz >= sizeof (dof_hdr_t)); in dtrace_dof_slurp()
12933 if (bcmp(&dof->dofh_ident[DOF_ID_MAG0], in dtrace_dof_slurp()
12935 dtrace_dof_error(dof, "DOF magic string mismatch"); in dtrace_dof_slurp()
12939 if (dof->dofh_ident[DOF_ID_MODEL] != DOF_MODEL_ILP32 && in dtrace_dof_slurp()
12940 dof->dofh_ident[DOF_ID_MODEL] != DOF_MODEL_LP64) { in dtrace_dof_slurp()
12941 dtrace_dof_error(dof, "DOF has invalid data model"); in dtrace_dof_slurp()
12945 if (dof->dofh_ident[DOF_ID_ENCODING] != DOF_ENCODE_NATIVE) { in dtrace_dof_slurp()
12946 dtrace_dof_error(dof, "DOF encoding mismatch"); in dtrace_dof_slurp()
12950 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_dof_slurp()
12951 dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_2) { in dtrace_dof_slurp()
12952 dtrace_dof_error(dof, "DOF version mismatch"); in dtrace_dof_slurp()
12956 if (dof->dofh_ident[DOF_ID_DIFVERS] != DIF_VERSION_2) { in dtrace_dof_slurp()
12957 dtrace_dof_error(dof, "DOF uses unsupported instruction set"); in dtrace_dof_slurp()
12961 if (dof->dofh_ident[DOF_ID_DIFIREG] > DIF_DIR_NREGS) { in dtrace_dof_slurp()
12962 dtrace_dof_error(dof, "DOF uses too many integer registers"); in dtrace_dof_slurp()
12966 if (dof->dofh_ident[DOF_ID_DIFTREG] > DIF_DTR_NREGS) { in dtrace_dof_slurp()
12967 dtrace_dof_error(dof, "DOF uses too many tuple registers"); in dtrace_dof_slurp()
12972 if (dof->dofh_ident[i] != 0) { in dtrace_dof_slurp()
12973 dtrace_dof_error(dof, "DOF has invalid ident byte set"); in dtrace_dof_slurp()
12978 if (dof->dofh_flags & ~DOF_FL_VALID) { in dtrace_dof_slurp()
12979 dtrace_dof_error(dof, "DOF has invalid flag bits set"); in dtrace_dof_slurp()
12983 if (dof->dofh_secsize == 0) { in dtrace_dof_slurp()
12984 dtrace_dof_error(dof, "zero section header size"); in dtrace_dof_slurp()
12993 seclen = (uint64_t)dof->dofh_secnum * (uint64_t)dof->dofh_secsize; in dtrace_dof_slurp()
12995 if (dof->dofh_secoff > len || seclen > len || in dtrace_dof_slurp()
12996 dof->dofh_secoff + seclen > len) { in dtrace_dof_slurp()
12997 dtrace_dof_error(dof, "truncated section headers"); in dtrace_dof_slurp()
13001 if (!IS_P2ALIGNED(dof->dofh_secoff, sizeof (uint64_t))) { in dtrace_dof_slurp()
13002 dtrace_dof_error(dof, "misaligned section headers"); in dtrace_dof_slurp()
13006 if (!IS_P2ALIGNED(dof->dofh_secsize, sizeof (uint64_t))) { in dtrace_dof_slurp()
13007 dtrace_dof_error(dof, "misaligned section size"); in dtrace_dof_slurp()
13016 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13018 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13026 dtrace_dof_error(dof, "illegal sections " in dtrace_dof_slurp()
13034 dtrace_dof_error(dof, "loadable section with load " in dtrace_dof_slurp()
13043 dtrace_dof_error(dof, "bad section alignment"); in dtrace_dof_slurp()
13048 dtrace_dof_error(dof, "misaligned section"); in dtrace_dof_slurp()
13054 dtrace_dof_error(dof, "corrupt section header"); in dtrace_dof_slurp()
13060 dtrace_dof_error(dof, "non-terminating string table"); in dtrace_dof_slurp()
13070 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13072 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13079 if (dtrace_dof_relocate(dof, sec, ubase) != 0) in dtrace_dof_slurp()
13088 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13090 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13095 if ((ep = dtrace_dof_ecbdesc(dof, sec, vstate, cr)) == NULL) { in dtrace_dof_slurp()
13112 dtrace_dof_options(dof_hdr_t *dof, dtrace_state_t *state) in dtrace_dof_options() argument
13119 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_options()
13120 dof_sec_t *sec = (dof_sec_t *)((uintptr_t)dof + in dtrace_dof_options()
13121 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_options()
13127 dtrace_dof_error(dof, "bad alignment in " in dtrace_dof_options()
13133 dtrace_dof_error(dof, "zeroed option entry size"); in dtrace_dof_options()
13138 dtrace_dof_error(dof, "bad option entry size"); in dtrace_dof_options()
13143 desc = (dof_optdesc_t *)((uintptr_t)dof + in dtrace_dof_options()
13147 dtrace_dof_error(dof, "non-zero option string"); in dtrace_dof_options()
13152 dtrace_dof_error(dof, "unset option"); in dtrace_dof_options()
13158 dtrace_dof_error(dof, "rejected option"); in dtrace_dof_options()
14228 dof_hdr_t *dof; in dtrace_anon_property() local
14239 if ((dof = dtrace_dof_property(c)) == NULL) { in dtrace_anon_property()
14253 dtrace_dof_destroy(dof); in dtrace_anon_property()
14277 dtrace_dof_destroy(dof); in dtrace_anon_property()
14282 rv = dtrace_dof_slurp(dof, &state->dts_vstate, CRED(), in dtrace_anon_property()
14286 rv = dtrace_dof_options(dof, state); in dtrace_anon_property()
14289 dtrace_dof_destroy(dof); in dtrace_anon_property()
14810 dof_hdr_t *dof; in dtrace_helper_provider_destroy() local
14812 dof = (dof_hdr_t *)(uintptr_t)hprov->dthp_prov.dofhp_dof; in dtrace_helper_provider_destroy()
14813 dtrace_dof_destroy(dof); in dtrace_helper_provider_destroy()
14821 dtrace_helper_provider_validate(dof_hdr_t *dof, dof_sec_t *sec) in dtrace_helper_provider_validate() argument
14823 uintptr_t daddr = (uintptr_t)dof; in dtrace_helper_provider_validate()
14836 dtrace_dof_error(dof, "misaligned section offset"); in dtrace_helper_provider_validate()
14845 ((dof->dofh_ident[DOF_ID_VERSION] == DOF_VERSION_1) ? in dtrace_helper_provider_validate()
14848 dtrace_dof_error(dof, "provider section too small"); in dtrace_helper_provider_validate()
14853 str_sec = dtrace_dof_sect(dof, DOF_SECT_STRTAB, provider->dofpv_strtab); in dtrace_helper_provider_validate()
14854 prb_sec = dtrace_dof_sect(dof, DOF_SECT_PROBES, provider->dofpv_probes); in dtrace_helper_provider_validate()
14855 arg_sec = dtrace_dof_sect(dof, DOF_SECT_PRARGS, provider->dofpv_prargs); in dtrace_helper_provider_validate()
14856 off_sec = dtrace_dof_sect(dof, DOF_SECT_PROFFS, provider->dofpv_proffs); in dtrace_helper_provider_validate()
14864 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_helper_provider_validate()
14866 (enoff_sec = dtrace_dof_sect(dof, DOF_SECT_PRENOFFS, in dtrace_helper_provider_validate()
14874 dtrace_dof_error(dof, "invalid provider name"); in dtrace_helper_provider_validate()
14880 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
14885 dtrace_dof_error(dof, "misaligned entry size"); in dtrace_helper_provider_validate()
14890 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
14895 dtrace_dof_error(dof, "misaligned section offset"); in dtrace_helper_provider_validate()
14900 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
14916 dtrace_dof_error(dof, "invalid function name"); in dtrace_helper_provider_validate()
14921 dtrace_dof_error(dof, "function name too long"); in dtrace_helper_provider_validate()
14927 dtrace_dof_error(dof, "invalid probe name"); in dtrace_helper_provider_validate()
14939 dtrace_dof_error(dof, "invalid probe offset"); in dtrace_helper_provider_validate()
14943 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1) { in dtrace_helper_provider_validate()
14953 dtrace_dof_error(dof, "is-enabled " in dtrace_helper_provider_validate()
14961 dtrace_dof_error(dof, "invalid is-enabled " in dtrace_helper_provider_validate()
14967 dtrace_dof_error(dof, "zero probe and " in dtrace_helper_provider_validate()
14972 dtrace_dof_error(dof, "zero probe offsets"); in dtrace_helper_provider_validate()
14980 dtrace_dof_error(dof, "invalid args"); in dtrace_helper_provider_validate()
14988 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
14995 dtrace_dof_error(dof, "native " in dtrace_helper_provider_validate()
15007 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
15013 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
15020 dtrace_dof_error(dof, "translated argument " in dtrace_helper_provider_validate()
15034 dtrace_helper_slurp(dof_hdr_t *dof, dof_helper_t *dhp) in dtrace_helper_slurp() argument
15040 uintptr_t daddr = (uintptr_t)dof; in dtrace_helper_slurp()
15049 if ((rv = dtrace_dof_slurp(dof, vstate, NULL, &enab, in dtrace_helper_slurp()
15051 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15059 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_slurp()
15061 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_slurp()
15066 if (dtrace_helper_provider_validate(dof, sec) != 0) { in dtrace_helper_slurp()
15068 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15100 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15108 dtrace_dof_error(dof, "unmatched helpers"); in dtrace_helper_slurp()
15114 dhp->dofhp_dof = (uint64_t)(uintptr_t)dof; in dtrace_helper_slurp()
15125 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15915 dof_hdr_t *dof = dtrace_dof_copyin(arg, &rval); in dtrace_ioctl_helper() local
15917 if (dof == NULL) in dtrace_ioctl_helper()
15926 if ((rval = dtrace_helper_slurp(dof, dhp)) != -1) { in dtrace_ioctl_helper()
16177 dof_hdr_t *dof; in dtrace_ioctl() local
16194 if ((dof = dtrace_dof_copyin(arg, &rval)) == NULL) in dtrace_ioctl()
16204 dtrace_dof_destroy(dof); in dtrace_ioctl()
16208 if (dtrace_dof_slurp(dof, vstate, cr, &enab, 0, B_TRUE) != 0) { in dtrace_ioctl()
16211 dtrace_dof_destroy(dof); in dtrace_ioctl()
16215 if ((rval = dtrace_dof_options(dof, state)) != 0) { in dtrace_ioctl()
16219 dtrace_dof_destroy(dof); in dtrace_ioctl()
16231 dtrace_dof_destroy(dof); in dtrace_ioctl()
16426 dof_hdr_t hdr, *dof; in dtrace_ioctl() local
16433 dof = dtrace_dof_create(state); in dtrace_ioctl()
16436 len = MIN(hdr.dofh_loadsz, dof->dofh_loadsz); in dtrace_ioctl()
16437 rval = copyout(dof, (void *)arg, len); in dtrace_ioctl()
16438 dtrace_dof_destroy(dof); in dtrace_ioctl()