Lines Matching refs:ex

120 	struct exec ex;
126 ex = *((struct exec *) bprm->buf); /* exec-header */
127 if ((N_MAGIC(ex) != ZMAGIC && N_MAGIC(ex) != OMAGIC &&
128 N_MAGIC(ex) != QMAGIC && N_MAGIC(ex) != NMAGIC) ||
129 N_TRSIZE(ex) || N_DRSIZE(ex) ||
130 i_size_read(file_inode(bprm->file)) < ex.a_text+ex.a_data+N_SYMSIZE(ex)+N_TXTOFF(ex)) {
141 fd_offset = N_TXTOFF(ex);
150 if (ex.a_data + ex.a_bss > rlim)
160 SET_AOUT_PERSONALITY(bprm, ex);
166 current->mm->end_code = ex.a_text +
167 (current->mm->start_code = N_TXTADDR(ex));
168 current->mm->end_data = ex.a_data +
169 (current->mm->start_data = N_DATADDR(ex));
170 current->mm->brk = ex.a_bss +
171 (current->mm->start_brk = N_BSSADDR(ex));
178 if (N_MAGIC(ex) == OMAGIC) {
182 text_addr = N_TXTADDR(ex);
186 map_size = ex.a_text+ex.a_data + PAGE_SIZE - 1;
189 map_size = ex.a_text+ex.a_data;
196 ex.a_text+ex.a_data);
200 if ((ex.a_text & 0xfff || ex.a_data & 0xfff) &&
201 (N_MAGIC(ex) != NMAGIC) && printk_ratelimit())
214 error = vm_brk(N_TXTADDR(ex), ex.a_text+ex.a_data);
218 read_code(bprm->file, N_TXTADDR(ex), fd_offset,
219 ex.a_text + ex.a_data);
223 error = vm_mmap(bprm->file, N_TXTADDR(ex), ex.a_text,
228 if (error != N_TXTADDR(ex))
231 error = vm_mmap(bprm->file, N_DATADDR(ex), ex.a_data,
234 fd_offset + ex.a_text);
235 if (error != N_DATADDR(ex))
248 regs->gp = ex.a_gpvalue;
251 start_thread(regs, ex.a_entry, current->mm->start_stack);
261 struct exec ex;
267 error = kernel_read(file, &ex, sizeof(ex), &pos);
268 if (error != sizeof(ex))
272 if ((N_MAGIC(ex) != ZMAGIC && N_MAGIC(ex) != QMAGIC) || N_TRSIZE(ex) ||
273 N_DRSIZE(ex) || ((ex.a_entry & 0xfff) && N_MAGIC(ex) == ZMAGIC) ||
274 i_size_read(inode) < ex.a_text+ex.a_data+N_SYMSIZE(ex)+N_TXTOFF(ex)) {
285 if (N_FLAGS(ex))
291 start_addr = ex.a_entry & 0xfffff000;
293 if ((N_TXTOFF(ex) & ~PAGE_MASK) != 0) {
300 retval = vm_brk(start_addr, ex.a_text + ex.a_data + ex.a_bss);
304 read_code(file, start_addr, N_TXTOFF(ex),
305 ex.a_text + ex.a_data);
310 error = vm_mmap(file, start_addr, ex.a_text + ex.a_data,
313 N_TXTOFF(ex));
318 len = PAGE_ALIGN(ex.a_text + ex.a_data);
319 bss = ex.a_text + ex.a_data + ex.a_bss;