Home | History | Annotate | Download | only in sunos

Lines Matching refs:epp

69 exec_sunos_aout_makecmds(struct lwp *l, struct exec_package *epp)
71 struct sunos_exec *sunmag = epp->ep_hdr;
74 if (epp->ep_hdrvalid < sizeof(struct sunos_exec))
81 error = sunos_exec_aout_prep_zmagic(l, epp);
84 error = sunos_exec_aout_prep_nmagic(l, epp);
87 error = sunos_exec_aout_prep_omagic(l, epp);
119 sunos_exec_aout_prep_zmagic(struct lwp *l, struct exec_package *epp)
121 struct exec *execp = epp->ep_hdr;
124 epp->ep_taddr = SUNOS_N_TXTADDR(*execp, ZMAGIC);
125 epp->ep_tsize = execp->a_text;
126 epp->ep_daddr = SUNOS_N_DATADDR(*execp, ZMAGIC);
127 epp->ep_dsize = execp->a_data + execp->a_bss;
128 epp->ep_entry = execp->a_entry;
130 error = vn_marktext(epp->ep_vp);
135 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_pagedvn, execp->a_text,
136 epp->ep_taddr, epp->ep_vp, SUNOS_N_TXTOFF(*execp, ZMAGIC),
140 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_pagedvn, execp->a_data,
141 epp->ep_daddr, epp->ep_vp, SUNOS_N_DATOFF(*execp, ZMAGIC),
146 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_zero, execp->a_bss,
147 epp->ep_daddr + execp->a_data, NULLVP, 0,
150 return (*epp->ep_esch->es_setup_stack)(l, epp);
157 sunos_exec_aout_prep_nmagic(struct lwp *l, struct exec_package *epp)
159 struct exec *execp = epp->ep_hdr;
162 epp->ep_taddr = SUNOS_N_TXTADDR(*execp, NMAGIC);
163 epp->ep_tsize = execp->a_text;
164 epp->ep_daddr = SUNOS_N_DATADDR(*execp, NMAGIC);
165 epp->ep_dsize = execp->a_data + execp->a_bss;
166 epp->ep_entry = execp->a_entry;
169 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_readvn, execp->a_text,
170 epp->ep_taddr, epp->ep_vp, SUNOS_N_TXTOFF(*execp, NMAGIC),
174 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_readvn, execp->a_data,
175 epp->ep_daddr, epp->ep_vp, SUNOS_N_DATOFF(*execp, NMAGIC),
179 baddr = roundup(epp->ep_daddr + execp->a_data, PAGE_SIZE);
180 bsize = epp->ep_daddr + epp->ep_dsize - baddr;
182 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_zero, bsize, baddr,
185 return (*epp->ep_esch->es_setup_stack)(l, epp);
192 sunos_exec_aout_prep_omagic(struct lwp *l, struct exec_package *epp)
194 struct exec *execp = epp->ep_hdr;
197 epp->ep_taddr = SUNOS_N_TXTADDR(*execp, OMAGIC);
198 epp->ep_tsize = execp->a_text;
199 epp->ep_daddr = SUNOS_N_DATADDR(*execp, OMAGIC);
200 epp->ep_dsize = execp->a_data + execp->a_bss;
201 epp->ep_entry = execp->a_entry;
204 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_readvn,
205 execp->a_text + execp->a_data, epp->ep_taddr, epp->ep_vp,
209 baddr = roundup(epp->ep_daddr + execp->a_data, PAGE_SIZE);
210 bsize = epp->ep_daddr + epp->ep_dsize - baddr;
212 NEW_VMCMD(&epp->ep_vmcmds, vmcmd_map_zero, bsize, baddr,
215 return (*epp->ep_esch->es_setup_stack)(l, epp);