Lines Matching defs:params

138 static int elf_fdpic_fetch_phdrs(struct elf_fdpic_params *params,
144 loff_t pos = params->hdr.e_phoff;
146 if (params->hdr.e_phentsize != sizeof(struct elf_phdr))
148 if (params->hdr.e_phnum > 65536U / sizeof(struct elf_phdr))
151 size = params->hdr.e_phnum * sizeof(struct elf_phdr);
152 params->phdrs = kmalloc(size, GFP_KERNEL);
153 if (!params->phdrs)
156 retval = kernel_read(file, params->phdrs, size, &pos);
161 phdr = params->phdrs;
162 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
167 params->flags |= ELF_FDPIC_FLAG_EXEC_STACK;
169 params->flags |= ELF_FDPIC_FLAG_NOEXEC_STACK;
171 params->stack_size = phdr->p_memsz;
727 * - if no other PIC bits are set in params->hdr->e_flags
734 static int elf_fdpic_map_file(struct elf_fdpic_params *params,
752 for (loop = 0; loop < params->hdr.e_phnum; loop++)
753 if (params->phdrs[loop].p_type == PT_LOAD)
764 params->loadmap = loadmap;
769 load_addr = params->load_addr;
773 switch (params->flags & ELF_FDPIC_FLAG_ARRANGEMENT) {
777 ret = elf_fdpic_map_file_constdisp_on_uclinux(params, file, mm);
783 ret = elf_fdpic_map_file_by_direct_mmap(params, file, mm);
790 if (params->hdr.e_entry) {
793 if (params->hdr.e_entry >= seg->p_vaddr &&
794 params->hdr.e_entry < seg->p_vaddr + seg->p_memsz) {
795 params->entry_addr =
796 (params->hdr.e_entry - seg->p_vaddr) +
804 stop = params->hdr.e_phoff;
805 stop += params->hdr.e_phnum * sizeof (struct elf_phdr);
806 phdr = params->phdrs;
808 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
812 if (phdr->p_offset > params->hdr.e_phoff ||
821 params->ph_addr =
824 params->hdr.e_phoff - phdr->p_offset;
832 phdr = params->phdrs;
833 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
845 params->dynamic_addr =
857 dyn = (Elf32_Dyn __user *)params->dynamic_addr;
897 kdebug("- elfhdr : %lx", params->elfhdr_addr);
898 kdebug("- entry : %lx", params->entry_addr);
899 kdebug("- PHDR[] : %lx", params->ph_addr);
900 kdebug("- DYNAMIC[]: %lx", params->dynamic_addr);
922 struct elf_fdpic_params *params,
931 load_addr = params->load_addr;
932 seg = params->loadmap->segs;
936 phdr = params->phdrs;
937 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
938 if (params->phdrs[loop].p_type != PT_LOAD)
949 if (params->flags & ELF_FDPIC_FLAG_EXECUTABLE)
961 phdr = params->phdrs;
962 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
963 if (params->phdrs[loop].p_type != PT_LOAD)
977 params->elfhdr_addr = seg->addr;
1010 static int elf_fdpic_map_file_by_direct_mmap(struct elf_fdpic_params *params,
1019 load_addr = params->load_addr;
1023 seg = params->loadmap->segs;
1026 phdr = params->phdrs;
1027 for (loop = 0; loop < params->hdr.e_phnum; loop++, phdr++) {
1046 if (params->flags & ELF_FDPIC_FLAG_EXECUTABLE)
1051 switch (params->flags & ELF_FDPIC_FLAG_ARRANGEMENT) {
1099 if ((params->flags & ELF_FDPIC_FLAG_ARRANGEMENT) ==
1109 params->elfhdr_addr = seg->addr;