Lines Matching refs:ehdr
904 sechdrs = (void *)pi->ehdr + pi->ehdr->e_shoff; in kexec_purgatory_setup_kbuf()
908 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_purgatory_setup_kbuf()
969 sechdrs_size = array_size(sizeof(Elf_Shdr), pi->ehdr->e_shnum); in kexec_purgatory_setup_sechdrs()
973 memcpy(sechdrs, (void *)pi->ehdr + pi->ehdr->e_shoff, sechdrs_size); in kexec_purgatory_setup_sechdrs()
978 kbuf->image->start = pi->ehdr->e_entry; in kexec_purgatory_setup_sechdrs()
980 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_purgatory_setup_sechdrs()
1008 pi->ehdr->e_entry >= sechdrs[i].sh_addr && in kexec_purgatory_setup_sechdrs()
1009 pi->ehdr->e_entry < (sechdrs[i].sh_addr in kexec_purgatory_setup_sechdrs()
1011 !WARN_ON(kbuf->image->start != pi->ehdr->e_entry)) { in kexec_purgatory_setup_sechdrs()
1016 src = (void *)pi->ehdr + sechdrs[i].sh_offset; in kexec_purgatory_setup_sechdrs()
1034 sechdrs = (void *)pi->ehdr + pi->ehdr->e_shoff; in kexec_apply_relocations()
1036 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_apply_relocations()
1053 if (relsec->sh_info >= pi->ehdr->e_shnum || in kexec_apply_relocations()
1054 relsec->sh_link >= pi->ehdr->e_shnum) in kexec_apply_relocations()
1067 if (symtab->sh_link >= pi->ehdr->e_shnum) in kexec_apply_relocations()
1107 pi->ehdr = (const Elf_Ehdr *)kexec_purgatory; in kexec_load_purgatory()
1142 const Elf_Ehdr *ehdr; in kexec_purgatory_find_symbol() local
1147 if (!pi->ehdr) in kexec_purgatory_find_symbol()
1150 ehdr = pi->ehdr; in kexec_purgatory_find_symbol()
1151 sechdrs = (void *)ehdr + ehdr->e_shoff; in kexec_purgatory_find_symbol()
1153 for (i = 0; i < ehdr->e_shnum; i++) { in kexec_purgatory_find_symbol()
1157 if (sechdrs[i].sh_link >= ehdr->e_shnum) in kexec_purgatory_find_symbol()
1160 strtab = (void *)ehdr + sechdrs[sechdrs[i].sh_link].sh_offset; in kexec_purgatory_find_symbol()
1161 syms = (void *)ehdr + sechdrs[i].sh_offset; in kexec_purgatory_find_symbol()
1172 syms[k].st_shndx >= ehdr->e_shnum) { in kexec_purgatory_find_symbol()