Lines Matching refs:interp_elf_ex
389 static unsigned long load_elf_interp(struct elfhdr *interp_elf_ex, in load_elf_interp() argument
403 if (interp_elf_ex->e_type != ET_EXEC && in load_elf_interp()
404 interp_elf_ex->e_type != ET_DYN) in load_elf_interp()
406 if (!elf_check_arch(interp_elf_ex)) in load_elf_interp()
415 if (interp_elf_ex->e_phentsize != sizeof(struct elf_phdr)) in load_elf_interp()
417 if (interp_elf_ex->e_phnum < 1 || in load_elf_interp()
418 interp_elf_ex->e_phnum > 65536U / sizeof(struct elf_phdr)) in load_elf_interp()
422 size = sizeof(struct elf_phdr) * interp_elf_ex->e_phnum; in load_elf_interp()
429 retval = kernel_read(interpreter, interp_elf_ex->e_phoff, in load_elf_interp()
438 total_size = total_mapping_size(elf_phdata, interp_elf_ex->e_phnum); in load_elf_interp()
445 for (i = 0; i < interp_elf_ex->e_phnum; i++, eppnt++) { in load_elf_interp()
459 if (interp_elf_ex->e_type == ET_EXEC || load_addr_set) in load_elf_interp()
461 else if (no_base && interp_elf_ex->e_type == ET_DYN) in load_elf_interp()
474 interp_elf_ex->e_type == ET_DYN) { in load_elf_interp()
590 struct elfhdr interp_elf_ex; in load_elf_binary() member
722 loc->interp_elf_ex = *((struct elfhdr *)bprm->buf); in load_elf_binary()
742 if (memcmp(loc->interp_elf_ex.e_ident, ELFMAG, SELFMAG) != 0) in load_elf_binary()
745 if (!elf_check_arch(&loc->interp_elf_ex)) in load_elf_binary()
925 elf_entry = load_elf_interp(&loc->interp_elf_ex, in load_elf_binary()
935 elf_entry += loc->interp_elf_ex.e_entry; in load_elf_binary()