Lines Matching refs:dof
8728 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provide_one() local
8743 str_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8744 provider->dofpv_strtab * dof->dofh_secsize); in dtrace_helper_provide_one()
8745 prb_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8746 provider->dofpv_probes * dof->dofh_secsize); in dtrace_helper_provide_one()
8747 arg_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8748 provider->dofpv_prargs * dof->dofh_secsize); in dtrace_helper_provide_one()
8749 off_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8750 provider->dofpv_proffs * dof->dofh_secsize); in dtrace_helper_provide_one()
8760 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_helper_provide_one()
8762 enoff_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provide_one()
8763 provider->dofpv_prenoffs * dof->dofh_secsize); in dtrace_helper_provide_one()
8813 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provide() local
8818 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_provide()
8820 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_provide()
8842 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provider_remove_one() local
8851 str_sec = (dof_sec_t *)(uintptr_t)(daddr + dof->dofh_secoff + in dtrace_helper_provider_remove_one()
8852 provider->dofpv_strtab * dof->dofh_secsize); in dtrace_helper_provider_remove_one()
8870 dof_hdr_t *dof = (dof_hdr_t *)daddr; in dtrace_helper_provider_remove() local
8875 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_provider_remove()
8877 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_provider_remove()
12308 dtrace_dof_error(dof_hdr_t *dof, const char *str) in dtrace_dof_error() argument
12326 dof_hdr_t *dof; in dtrace_dof_create() local
12335 dof = kmem_zalloc(len, KM_SLEEP); in dtrace_dof_create()
12336 dof->dofh_ident[DOF_ID_MAG0] = DOF_MAG_MAG0; in dtrace_dof_create()
12337 dof->dofh_ident[DOF_ID_MAG1] = DOF_MAG_MAG1; in dtrace_dof_create()
12338 dof->dofh_ident[DOF_ID_MAG2] = DOF_MAG_MAG2; in dtrace_dof_create()
12339 dof->dofh_ident[DOF_ID_MAG3] = DOF_MAG_MAG3; in dtrace_dof_create()
12341 dof->dofh_ident[DOF_ID_MODEL] = DOF_MODEL_NATIVE; in dtrace_dof_create()
12342 dof->dofh_ident[DOF_ID_ENCODING] = DOF_ENCODE_NATIVE; in dtrace_dof_create()
12343 dof->dofh_ident[DOF_ID_VERSION] = DOF_VERSION; in dtrace_dof_create()
12344 dof->dofh_ident[DOF_ID_DIFVERS] = DIF_VERSION; in dtrace_dof_create()
12345 dof->dofh_ident[DOF_ID_DIFIREG] = DIF_DIR_NREGS; in dtrace_dof_create()
12346 dof->dofh_ident[DOF_ID_DIFTREG] = DIF_DTR_NREGS; in dtrace_dof_create()
12348 dof->dofh_flags = 0; in dtrace_dof_create()
12349 dof->dofh_hdrsize = sizeof (dof_hdr_t); in dtrace_dof_create()
12350 dof->dofh_secsize = sizeof (dof_sec_t); in dtrace_dof_create()
12351 dof->dofh_secnum = 1; /* only DOF_SECT_OPTDESC */ in dtrace_dof_create()
12352 dof->dofh_secoff = sizeof (dof_hdr_t); in dtrace_dof_create()
12353 dof->dofh_loadsz = len; in dtrace_dof_create()
12354 dof->dofh_filesz = len; in dtrace_dof_create()
12355 dof->dofh_pad = 0; in dtrace_dof_create()
12360 sec = (dof_sec_t *)((uintptr_t)dof + sizeof (dof_hdr_t)); in dtrace_dof_create()
12369 sec->dofs_offset = (uintptr_t)opt - (uintptr_t)dof; in dtrace_dof_create()
12378 return (dof); in dtrace_dof_create()
12384 dof_hdr_t hdr, *dof; in dtrace_dof_copyin() local
12413 dof = kmem_alloc(hdr.dofh_loadsz, KM_SLEEP); in dtrace_dof_copyin()
12415 if (copyin((void *)uarg, dof, hdr.dofh_loadsz) != 0 || in dtrace_dof_copyin()
12416 dof->dofh_loadsz != hdr.dofh_loadsz) { in dtrace_dof_copyin()
12417 kmem_free(dof, hdr.dofh_loadsz); in dtrace_dof_copyin()
12422 return (dof); in dtrace_dof_copyin()
12431 dof_hdr_t *dof; in dtrace_dof_property() local
12463 dof = kmem_alloc(loadsz, KM_SLEEP); in dtrace_dof_property()
12464 bcopy(buf, dof, loadsz); in dtrace_dof_property()
12467 return (dof); in dtrace_dof_property()
12471 dtrace_dof_destroy(dof_hdr_t *dof) in dtrace_dof_destroy() argument
12473 kmem_free(dof, dof->dofh_loadsz); in dtrace_dof_destroy()
12483 dtrace_dof_sect(dof_hdr_t *dof, uint32_t type, dof_secidx_t i) in dtrace_dof_sect() argument
12486 ((uintptr_t)dof + dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_sect()
12488 if (i >= dof->dofh_secnum) { in dtrace_dof_sect()
12489 dtrace_dof_error(dof, "referenced section index is invalid"); in dtrace_dof_sect()
12494 dtrace_dof_error(dof, "referenced section is not loadable"); in dtrace_dof_sect()
12499 dtrace_dof_error(dof, "referenced section is the wrong type"); in dtrace_dof_sect()
12507 dtrace_dof_probedesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_probedesc_t *desc) in dtrace_dof_probedesc() argument
12511 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_probedesc()
12516 dtrace_dof_error(dof, "invalid probe section"); in dtrace_dof_probedesc()
12521 dtrace_dof_error(dof, "bad alignment in probe description"); in dtrace_dof_probedesc()
12525 if (sec->dofs_offset + sizeof (dof_probedesc_t) > dof->dofh_loadsz) { in dtrace_dof_probedesc()
12526 dtrace_dof_error(dof, "truncated probe description"); in dtrace_dof_probedesc()
12531 strtab = dtrace_dof_sect(dof, DOF_SECT_STRTAB, probe->dofp_strtab); in dtrace_dof_probedesc()
12540 dtrace_dof_error(dof, "corrupt probe provider"); in dtrace_dof_probedesc()
12549 dtrace_dof_error(dof, "corrupt probe module"); in dtrace_dof_probedesc()
12557 dtrace_dof_error(dof, "corrupt probe function"); in dtrace_dof_probedesc()
12565 dtrace_dof_error(dof, "corrupt probe name"); in dtrace_dof_probedesc()
12576 dtrace_dof_difo(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_difo() argument
12582 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_difo()
12614 dtrace_dof_error(dof, "invalid DIFO header section"); in dtrace_dof_difo()
12619 dtrace_dof_error(dof, "bad alignment in DIFO header"); in dtrace_dof_difo()
12625 dtrace_dof_error(dof, "bad size in DIFO header"); in dtrace_dof_difo()
12640 if ((subsec = dtrace_dof_sect(dof, DOF_SECT_NONE, in dtrace_dof_difo()
12645 dtrace_dof_error(dof, "exceeds maximum size"); in dtrace_dof_difo()
12656 dtrace_dof_error(dof, "section not loaded"); in dtrace_dof_difo()
12661 dtrace_dof_error(dof, "bad alignment"); in dtrace_dof_difo()
12669 dtrace_dof_error(dof, difo[i].msg); in dtrace_dof_difo()
12674 dtrace_dof_error(dof, "entry size mismatch"); in dtrace_dof_difo()
12680 dtrace_dof_error(dof, "corrupt entry size"); in dtrace_dof_difo()
12701 dtrace_dof_error(dof, "unrecognized DIFO subsection"); in dtrace_dof_difo()
12710 dtrace_dof_error(dof, "missing DIF text"); in dtrace_dof_difo()
12750 dtrace_dof_predicate(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_predicate() argument
12755 if ((dp = dtrace_dof_difo(dof, sec, vstate, cr)) == NULL) in dtrace_dof_predicate()
12762 dtrace_dof_actdesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_actdesc() argument
12769 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_actdesc()
12774 dtrace_dof_error(dof, "invalid action section"); in dtrace_dof_actdesc()
12778 if (sec->dofs_offset + sizeof (dof_actdesc_t) > dof->dofh_loadsz) { in dtrace_dof_actdesc()
12779 dtrace_dof_error(dof, "truncated action description"); in dtrace_dof_actdesc()
12784 dtrace_dof_error(dof, "bad alignment in action description"); in dtrace_dof_actdesc()
12789 dtrace_dof_error(dof, "section entry size exceeds total size"); in dtrace_dof_actdesc()
12794 dtrace_dof_error(dof, "bad entry size in action description"); in dtrace_dof_actdesc()
12799 dtrace_dof_error(dof, "actions exceed dtrace_actions_max"); in dtrace_dof_actdesc()
12823 if ((strtab = dtrace_dof_sect(dof, in dtrace_dof_actdesc()
12827 str = (char *)((uintptr_t)dof + in dtrace_dof_actdesc()
12836 dtrace_dof_error(dof, "bogus format string"); in dtrace_dof_actdesc()
12841 dtrace_dof_error(dof, "empty format string"); in dtrace_dof_actdesc()
12872 if ((difosec = dtrace_dof_sect(dof, in dtrace_dof_actdesc()
12876 act->dtad_difo = dtrace_dof_difo(dof, difosec, vstate, cr); in dtrace_dof_actdesc()
12895 dtrace_dof_ecbdesc(dof_hdr_t *dof, dof_sec_t *sec, dtrace_vstate_t *vstate, in dtrace_dof_ecbdesc() argument
12904 dtrace_dof_error(dof, "truncated ECB description"); in dtrace_dof_ecbdesc()
12909 dtrace_dof_error(dof, "bad alignment in ECB description"); in dtrace_dof_ecbdesc()
12913 ecb = (dof_ecbdesc_t *)((uintptr_t)dof + (uintptr_t)sec->dofs_offset); in dtrace_dof_ecbdesc()
12914 sec = dtrace_dof_sect(dof, DOF_SECT_PROBEDESC, ecb->dofe_probes); in dtrace_dof_ecbdesc()
12923 if (dtrace_dof_probedesc(dof, sec, desc) == NULL) in dtrace_dof_ecbdesc()
12927 if ((sec = dtrace_dof_sect(dof, in dtrace_dof_ecbdesc()
12931 if ((pred = dtrace_dof_predicate(dof, sec, vstate, cr)) == NULL) in dtrace_dof_ecbdesc()
12938 if ((sec = dtrace_dof_sect(dof, in dtrace_dof_ecbdesc()
12942 ep->dted_action = dtrace_dof_actdesc(dof, sec, vstate, cr); in dtrace_dof_ecbdesc()
12964 dtrace_dof_relocate(dof_hdr_t *dof, dof_sec_t *sec, uint64_t ubase) in dtrace_dof_relocate() argument
12966 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_relocate()
12975 dtrace_dof_error(dof, "invalid relocation header"); in dtrace_dof_relocate()
12979 ss = dtrace_dof_sect(dof, DOF_SECT_STRTAB, dofr->dofr_strtab); in dtrace_dof_relocate()
12980 rs = dtrace_dof_sect(dof, DOF_SECT_RELTAB, dofr->dofr_relsec); in dtrace_dof_relocate()
12981 ts = dtrace_dof_sect(dof, DOF_SECT_NONE, dofr->dofr_tgtsec); in dtrace_dof_relocate()
12988 dtrace_dof_error(dof, "invalid relocation section"); in dtrace_dof_relocate()
13004 dtrace_dof_error(dof, "bad relocation offset"); in dtrace_dof_relocate()
13009 dtrace_dof_error(dof, "misaligned setx relo"); in dtrace_dof_relocate()
13016 dtrace_dof_error(dof, "invalid relocation type"); in dtrace_dof_relocate()
13033 dtrace_dof_slurp(dof_hdr_t *dof, dtrace_vstate_t *vstate, cred_t *cr, in dtrace_dof_slurp() argument
13036 uint64_t len = dof->dofh_loadsz, seclen; in dtrace_dof_slurp()
13037 uintptr_t daddr = (uintptr_t)dof; in dtrace_dof_slurp()
13043 ASSERT(dof->dofh_loadsz >= sizeof (dof_hdr_t)); in dtrace_dof_slurp()
13050 if (bcmp(&dof->dofh_ident[DOF_ID_MAG0], in dtrace_dof_slurp()
13052 dtrace_dof_error(dof, "DOF magic string mismatch"); in dtrace_dof_slurp()
13056 if (dof->dofh_ident[DOF_ID_MODEL] != DOF_MODEL_ILP32 && in dtrace_dof_slurp()
13057 dof->dofh_ident[DOF_ID_MODEL] != DOF_MODEL_LP64) { in dtrace_dof_slurp()
13058 dtrace_dof_error(dof, "DOF has invalid data model"); in dtrace_dof_slurp()
13062 if (dof->dofh_ident[DOF_ID_ENCODING] != DOF_ENCODE_NATIVE) { in dtrace_dof_slurp()
13063 dtrace_dof_error(dof, "DOF encoding mismatch"); in dtrace_dof_slurp()
13067 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_dof_slurp()
13068 dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_2) { in dtrace_dof_slurp()
13069 dtrace_dof_error(dof, "DOF version mismatch"); in dtrace_dof_slurp()
13073 if (dof->dofh_ident[DOF_ID_DIFVERS] != DIF_VERSION_2) { in dtrace_dof_slurp()
13074 dtrace_dof_error(dof, "DOF uses unsupported instruction set"); in dtrace_dof_slurp()
13078 if (dof->dofh_ident[DOF_ID_DIFIREG] > DIF_DIR_NREGS) { in dtrace_dof_slurp()
13079 dtrace_dof_error(dof, "DOF uses too many integer registers"); in dtrace_dof_slurp()
13083 if (dof->dofh_ident[DOF_ID_DIFTREG] > DIF_DTR_NREGS) { in dtrace_dof_slurp()
13084 dtrace_dof_error(dof, "DOF uses too many tuple registers"); in dtrace_dof_slurp()
13089 if (dof->dofh_ident[i] != 0) { in dtrace_dof_slurp()
13090 dtrace_dof_error(dof, "DOF has invalid ident byte set"); in dtrace_dof_slurp()
13095 if (dof->dofh_flags & ~DOF_FL_VALID) { in dtrace_dof_slurp()
13096 dtrace_dof_error(dof, "DOF has invalid flag bits set"); in dtrace_dof_slurp()
13100 if (dof->dofh_secsize == 0) { in dtrace_dof_slurp()
13101 dtrace_dof_error(dof, "zero section header size"); in dtrace_dof_slurp()
13110 seclen = (uint64_t)dof->dofh_secnum * (uint64_t)dof->dofh_secsize; in dtrace_dof_slurp()
13112 if (dof->dofh_secoff > len || seclen > len || in dtrace_dof_slurp()
13113 dof->dofh_secoff + seclen > len) { in dtrace_dof_slurp()
13114 dtrace_dof_error(dof, "truncated section headers"); in dtrace_dof_slurp()
13118 if (!IS_P2ALIGNED(dof->dofh_secoff, sizeof (uint64_t))) { in dtrace_dof_slurp()
13119 dtrace_dof_error(dof, "misaligned section headers"); in dtrace_dof_slurp()
13123 if (!IS_P2ALIGNED(dof->dofh_secsize, sizeof (uint64_t))) { in dtrace_dof_slurp()
13124 dtrace_dof_error(dof, "misaligned section size"); in dtrace_dof_slurp()
13133 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13135 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13143 dtrace_dof_error(dof, "illegal sections " in dtrace_dof_slurp()
13151 dtrace_dof_error(dof, "loadable section with load " in dtrace_dof_slurp()
13160 dtrace_dof_error(dof, "bad section alignment"); in dtrace_dof_slurp()
13165 dtrace_dof_error(dof, "misaligned section"); in dtrace_dof_slurp()
13171 dtrace_dof_error(dof, "corrupt section header"); in dtrace_dof_slurp()
13177 dtrace_dof_error(dof, "non-terminating string table"); in dtrace_dof_slurp()
13187 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13189 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13196 if (dtrace_dof_relocate(dof, sec, ubase) != 0) in dtrace_dof_slurp()
13205 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_slurp()
13207 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_slurp()
13212 if ((ep = dtrace_dof_ecbdesc(dof, sec, vstate, cr)) == NULL) { in dtrace_dof_slurp()
13229 dtrace_dof_options(dof_hdr_t *dof, dtrace_state_t *state) in dtrace_dof_options() argument
13236 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_dof_options()
13237 dof_sec_t *sec = (dof_sec_t *)((uintptr_t)dof + in dtrace_dof_options()
13238 (uintptr_t)dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_dof_options()
13244 dtrace_dof_error(dof, "bad alignment in " in dtrace_dof_options()
13250 dtrace_dof_error(dof, "zeroed option entry size"); in dtrace_dof_options()
13255 dtrace_dof_error(dof, "bad option entry size"); in dtrace_dof_options()
13260 desc = (dof_optdesc_t *)((uintptr_t)dof + in dtrace_dof_options()
13264 dtrace_dof_error(dof, "non-zero option string"); in dtrace_dof_options()
13269 dtrace_dof_error(dof, "unset option"); in dtrace_dof_options()
13275 dtrace_dof_error(dof, "rejected option"); in dtrace_dof_options()
14352 dof_hdr_t *dof; in dtrace_anon_property() local
14363 if ((dof = dtrace_dof_property(c)) == NULL) { in dtrace_anon_property()
14377 dtrace_dof_destroy(dof); in dtrace_anon_property()
14401 dtrace_dof_destroy(dof); in dtrace_anon_property()
14406 rv = dtrace_dof_slurp(dof, &state->dts_vstate, CRED(), in dtrace_anon_property()
14410 rv = dtrace_dof_options(dof, state); in dtrace_anon_property()
14413 dtrace_dof_destroy(dof); in dtrace_anon_property()
14934 dof_hdr_t *dof; in dtrace_helper_provider_destroy() local
14936 dof = (dof_hdr_t *)(uintptr_t)hprov->dthp_prov.dofhp_dof; in dtrace_helper_provider_destroy()
14937 dtrace_dof_destroy(dof); in dtrace_helper_provider_destroy()
14945 dtrace_helper_provider_validate(dof_hdr_t *dof, dof_sec_t *sec) in dtrace_helper_provider_validate() argument
14947 uintptr_t daddr = (uintptr_t)dof; in dtrace_helper_provider_validate()
14960 dtrace_dof_error(dof, "misaligned section offset"); in dtrace_helper_provider_validate()
14969 ((dof->dofh_ident[DOF_ID_VERSION] == DOF_VERSION_1) ? in dtrace_helper_provider_validate()
14972 dtrace_dof_error(dof, "provider section too small"); in dtrace_helper_provider_validate()
14977 str_sec = dtrace_dof_sect(dof, DOF_SECT_STRTAB, provider->dofpv_strtab); in dtrace_helper_provider_validate()
14978 prb_sec = dtrace_dof_sect(dof, DOF_SECT_PROBES, provider->dofpv_probes); in dtrace_helper_provider_validate()
14979 arg_sec = dtrace_dof_sect(dof, DOF_SECT_PRARGS, provider->dofpv_prargs); in dtrace_helper_provider_validate()
14980 off_sec = dtrace_dof_sect(dof, DOF_SECT_PROFFS, provider->dofpv_proffs); in dtrace_helper_provider_validate()
14988 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1 && in dtrace_helper_provider_validate()
14990 (enoff_sec = dtrace_dof_sect(dof, DOF_SECT_PRENOFFS, in dtrace_helper_provider_validate()
14998 dtrace_dof_error(dof, "invalid provider name"); in dtrace_helper_provider_validate()
15004 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
15009 dtrace_dof_error(dof, "misaligned entry size"); in dtrace_helper_provider_validate()
15014 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
15019 dtrace_dof_error(dof, "misaligned section offset"); in dtrace_helper_provider_validate()
15024 dtrace_dof_error(dof, "invalid entry size"); in dtrace_helper_provider_validate()
15040 dtrace_dof_error(dof, "invalid function name"); in dtrace_helper_provider_validate()
15045 dtrace_dof_error(dof, "function name too long"); in dtrace_helper_provider_validate()
15051 dtrace_dof_error(dof, "invalid probe name"); in dtrace_helper_provider_validate()
15063 dtrace_dof_error(dof, "invalid probe offset"); in dtrace_helper_provider_validate()
15067 if (dof->dofh_ident[DOF_ID_VERSION] != DOF_VERSION_1) { in dtrace_helper_provider_validate()
15077 dtrace_dof_error(dof, "is-enabled " in dtrace_helper_provider_validate()
15085 dtrace_dof_error(dof, "invalid is-enabled " in dtrace_helper_provider_validate()
15091 dtrace_dof_error(dof, "zero probe and " in dtrace_helper_provider_validate()
15096 dtrace_dof_error(dof, "zero probe offsets"); in dtrace_helper_provider_validate()
15104 dtrace_dof_error(dof, "invalid args"); in dtrace_helper_provider_validate()
15112 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
15119 dtrace_dof_error(dof, "native " in dtrace_helper_provider_validate()
15131 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
15137 dtrace_dof_error(dof, "bad " in dtrace_helper_provider_validate()
15144 dtrace_dof_error(dof, "translated argument " in dtrace_helper_provider_validate()
15158 dtrace_helper_slurp(dof_hdr_t *dof, dof_helper_t *dhp) in dtrace_helper_slurp() argument
15164 uintptr_t daddr = (uintptr_t)dof; in dtrace_helper_slurp()
15173 if ((rv = dtrace_dof_slurp(dof, vstate, NULL, &enab, in dtrace_helper_slurp()
15175 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15183 for (i = 0; i < dof->dofh_secnum; i++) { in dtrace_helper_slurp()
15185 dof->dofh_secoff + i * dof->dofh_secsize); in dtrace_helper_slurp()
15190 if (dtrace_helper_provider_validate(dof, sec) != 0) { in dtrace_helper_slurp()
15192 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15224 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
15232 dtrace_dof_error(dof, "unmatched helpers"); in dtrace_helper_slurp()
15244 dhp->dofhp_dof = (uint64_t)(uintptr_t)dof; in dtrace_helper_slurp()
15256 dtrace_dof_destroy(dof); in dtrace_helper_slurp()
16046 dof_hdr_t *dof = dtrace_dof_copyin(arg, &rval); in dtrace_ioctl_helper() local
16048 if (dof == NULL) in dtrace_ioctl_helper()
16057 if ((rval = dtrace_helper_slurp(dof, dhp)) != -1) { in dtrace_ioctl_helper()
16308 dof_hdr_t *dof; in dtrace_ioctl() local
16325 if ((dof = dtrace_dof_copyin(arg, &rval)) == NULL) in dtrace_ioctl()
16335 dtrace_dof_destroy(dof); in dtrace_ioctl()
16339 if (dtrace_dof_slurp(dof, vstate, cr, &enab, 0, B_TRUE) != 0) { in dtrace_ioctl()
16342 dtrace_dof_destroy(dof); in dtrace_ioctl()
16346 if ((rval = dtrace_dof_options(dof, state)) != 0) { in dtrace_ioctl()
16350 dtrace_dof_destroy(dof); in dtrace_ioctl()
16362 dtrace_dof_destroy(dof); in dtrace_ioctl()
16557 dof_hdr_t hdr, *dof; in dtrace_ioctl() local
16564 dof = dtrace_dof_create(state); in dtrace_ioctl()
16567 len = MIN(hdr.dofh_loadsz, dof->dofh_loadsz); in dtrace_ioctl()
16568 rval = copyout(dof, (void *)arg, len); in dtrace_ioctl()
16569 dtrace_dof_destroy(dof); in dtrace_ioctl()