Lines Matching refs:ehdr
819 sechdrs = (void *)pi->ehdr + pi->ehdr->e_shoff; in kexec_purgatory_setup_kbuf()
823 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_purgatory_setup_kbuf()
884 sechdrs_size = array_size(sizeof(Elf_Shdr), pi->ehdr->e_shnum); in kexec_purgatory_setup_sechdrs()
888 memcpy(sechdrs, (void *)pi->ehdr + pi->ehdr->e_shoff, sechdrs_size); in kexec_purgatory_setup_sechdrs()
893 kbuf->image->start = pi->ehdr->e_entry; in kexec_purgatory_setup_sechdrs()
895 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_purgatory_setup_sechdrs()
923 pi->ehdr->e_entry >= sechdrs[i].sh_addr && in kexec_purgatory_setup_sechdrs()
924 pi->ehdr->e_entry < (sechdrs[i].sh_addr in kexec_purgatory_setup_sechdrs()
926 !WARN_ON(kbuf->image->start != pi->ehdr->e_entry)) { in kexec_purgatory_setup_sechdrs()
931 src = (void *)pi->ehdr + sechdrs[i].sh_offset; in kexec_purgatory_setup_sechdrs()
949 sechdrs = (void *)pi->ehdr + pi->ehdr->e_shoff; in kexec_apply_relocations()
951 for (i = 0; i < pi->ehdr->e_shnum; i++) { in kexec_apply_relocations()
968 if (relsec->sh_info >= pi->ehdr->e_shnum || in kexec_apply_relocations()
969 relsec->sh_link >= pi->ehdr->e_shnum) in kexec_apply_relocations()
982 if (symtab->sh_link >= pi->ehdr->e_shnum) in kexec_apply_relocations()
1022 pi->ehdr = (const Elf_Ehdr *)kexec_purgatory; in kexec_load_purgatory()
1057 const Elf_Ehdr *ehdr; in kexec_purgatory_find_symbol() local
1062 if (!pi->ehdr) in kexec_purgatory_find_symbol()
1065 ehdr = pi->ehdr; in kexec_purgatory_find_symbol()
1066 sechdrs = (void *)ehdr + ehdr->e_shoff; in kexec_purgatory_find_symbol()
1068 for (i = 0; i < ehdr->e_shnum; i++) { in kexec_purgatory_find_symbol()
1072 if (sechdrs[i].sh_link >= ehdr->e_shnum) in kexec_purgatory_find_symbol()
1075 strtab = (void *)ehdr + sechdrs[sechdrs[i].sh_link].sh_offset; in kexec_purgatory_find_symbol()
1076 syms = (void *)ehdr + sechdrs[i].sh_offset; in kexec_purgatory_find_symbol()
1087 syms[k].st_shndx >= ehdr->e_shnum) { in kexec_purgatory_find_symbol()