Home
last modified time | relevance | path

Searched refs:sechdrs (Results 1 – 25 of 32) sorted by relevance

12

/arch/powerpc/kernel/
Dmodule_64.c138 const Elf64_Shdr *sechdrs) in get_stubs_size() argument
146 if (sechdrs[i].sh_type == SHT_RELA) { in get_stubs_size()
149 (void *)sechdrs[i].sh_addr, in get_stubs_size()
150 sechdrs[i].sh_size / sizeof(Elf64_Rela)); in get_stubs_size()
157 sort((void *)sechdrs[i].sh_addr, in get_stubs_size()
158 sechdrs[i].sh_size / sizeof(Elf64_Rela), in get_stubs_size()
161 relocs += count_relocs((void *)sechdrs[i].sh_addr, in get_stubs_size()
162 sechdrs[i].sh_size in get_stubs_size()
201 Elf64_Shdr *sechdrs, in module_frob_arch_sections() argument
210 if (strcmp(secstrings + sechdrs[i].sh_name, ".stubs") == 0) in module_frob_arch_sections()
[all …]
Dmodule_32.c104 const Elf32_Shdr *sechdrs, in get_plt_size() argument
116 if ((strstr(secstrings + sechdrs[i].sh_name, ".init") != 0) in get_plt_size()
121 if (strstr(secstrings + sechdrs[i].sh_name, ".debug") != 0) in get_plt_size()
124 if (sechdrs[i].sh_type == SHT_RELA) { in get_plt_size()
127 (void *)hdr + sechdrs[i].sh_offset, in get_plt_size()
128 sechdrs[i].sh_size / sizeof(Elf32_Rela)); in get_plt_size()
135 sort((void *)hdr + sechdrs[i].sh_offset, in get_plt_size()
136 sechdrs[i].sh_size / sizeof(Elf32_Rela), in get_plt_size()
140 + sechdrs[i].sh_offset, in get_plt_size()
141 sechdrs[i].sh_size in get_plt_size()
[all …]
Dmodule.c34 const Elf_Shdr *sechdrs, in find_section() argument
40 secstrings = (char *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in find_section()
42 if (strcmp(secstrings+sechdrs[i].sh_name, name) == 0) in find_section()
43 return &sechdrs[i]; in find_section()
48 const Elf_Shdr *sechdrs, struct module *me) in module_finalize() argument
53 sect = find_section(hdr, sechdrs, "__ftr_fixup"); in module_finalize()
59 sect = find_section(hdr, sechdrs, "__mmu_ftr_fixup"); in module_finalize()
66 sect = find_section(hdr, sechdrs, "__fw_ftr_fixup"); in module_finalize()
73 sect = find_section(hdr, sechdrs, "__lwsync_fixup"); in module_finalize()
/arch/m68k/kernel/
Dmodule.c22 int apply_relocate(Elf32_Shdr *sechdrs, in apply_relocate() argument
29 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate()
34 sechdrs[relsec].sh_info); in apply_relocate()
35 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate()
37 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate()
41 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate()
62 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
69 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
74 sechdrs[relsec].sh_info); in apply_relocate_add()
75 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
[all …]
/arch/x86/kernel/
Dmodule.c48 int apply_relocate(Elf32_Shdr *sechdrs, in apply_relocate() argument
55 Elf32_Rel *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate()
60 sechdrs[relsec].sh_info); in apply_relocate()
61 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate()
63 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate()
67 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate()
88 int apply_relocate_add(Elf64_Shdr *sechdrs, in apply_relocate_add() argument
95 Elf64_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
101 sechdrs[relsec].sh_info); in apply_relocate_add()
102 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
[all …]
/arch/sparc/kernel/
Dmodule.c76 Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
85 for (symidx = 0; sechdrs[symidx].sh_type != SHT_SYMTAB; symidx++) { in module_frob_arch_sections()
91 sym = (Elf_Sym *)sechdrs[symidx].sh_addr; in module_frob_arch_sections()
92 strtab = (char *)sechdrs[sechdrs[symidx].sh_link].sh_addr; in module_frob_arch_sections()
94 for (i = 1; i < sechdrs[symidx].sh_size / sizeof(Elf_Sym); i++) { in module_frob_arch_sections()
107 int apply_relocate_add(Elf_Shdr *sechdrs, in apply_relocate_add() argument
114 Elf_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
119 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
123 location = (u8 *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
133 sym = (Elf_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
[all …]
/arch/hexagon/kernel/
Dmodule.c40 int module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
50 secstrings + sechdrs[i].sh_name); in module_frob_arch_sections()
51 if (strcmp(secstrings + sechdrs[i].sh_name, ".plt") == 0) in module_frob_arch_sections()
53 if (strcmp(secstrings + sechdrs[i].sh_name, ".got.plt") == 0) in module_frob_arch_sections()
55 if (strcmp(secstrings + sechdrs[i].sh_name, ".rela.plt") == 0) in module_frob_arch_sections()
80 int apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
88 unsigned int nrelocs = sechdrs[relsec].sh_size / sizeof(Elf32_Rela); in apply_relocate_add()
89 Elf32_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
90 Elf32_Word sym_info = sechdrs[relsec].sh_info; in apply_relocate_add()
91 Elf32_Sym *sym_base = (Elf32_Sym *) sechdrs[symindex].sh_addr; in apply_relocate_add()
[all …]
/arch/sh/kernel/
Dmodule.c37 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
44 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
51 sechdrs[relsec].sh_info); in apply_relocate_add()
52 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
54 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
58 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
113 const Elf_Shdr *sechdrs, in module_finalize() argument
118 ret |= module_dwarf_finalize(hdr, sechdrs, me); in module_finalize()
/arch/cris/kernel/
Dmodule.c47 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
54 Elf32_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
57 sechdrs[relsec].sh_info); in apply_relocate_add()
59 for (i = 0; i < sechdrs[relsec].sh_size / sizeof (*rela); i++) { in apply_relocate_add()
62 = ((void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
67 = ((Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/openrisc/kernel/
Dmodule.c20 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
27 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
33 sechdrs[relsec].sh_info); in apply_relocate_add()
34 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
36 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
41 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/microblaze/kernel/
Dmodule.c21 int apply_relocate_add(Elf32_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
26 Elf32_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
35 relsec, sechdrs[relsec].sh_info); in apply_relocate_add()
37 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rela); i++) { in apply_relocate_add()
39 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr + in apply_relocate_add()
41 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr + in apply_relocate_add()
121 int module_finalize(const Elf32_Ehdr *hdr, const Elf_Shdr *sechdrs, in module_finalize() argument
/arch/blackfin/kernel/
Dmodule.c21 module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
31 Elf_Shdr *s, *sechdrs_end = sechdrs + hdr->e_shnum; in module_frob_arch_sections()
34 for (s = sechdrs; s < sechdrs_end; ++s) { in module_frob_arch_sections()
151 apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
156 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
161 relsec, sechdrs[relsec].sh_info); in apply_relocate_add()
163 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
165 location = sechdrs[sechdrs[relsec].sh_info].sh_addr + in apply_relocate_add()
170 sym = (Elf32_Sym *) sechdrs[symindex].sh_addr in apply_relocate_add()
235 const Elf_Shdr * sechdrs, struct module *mod) in module_finalize() argument
[all …]
/arch/h8300/kernel/
Dmodule.c14 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
21 Elf32_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
24 sechdrs[relsec].sh_info); in apply_relocate_add()
25 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rela); i++) { in apply_relocate_add()
27 uint32_t *loc = (uint32_t *)(sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
31 Elf32_Sym *sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/mips/kernel/
Dmodule.c262 int apply_relocate(Elf_Shdr *sechdrs, const char *strtab, in apply_relocate() argument
266 Elf_Mips_Rel *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocate()
274 sechdrs[relsec].sh_info); in apply_relocate()
276 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate()
278 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate()
281 sym = (Elf_Sym *)sechdrs[symindex].sh_addr in apply_relocate()
302 int apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
306 Elf_Mips_Rela *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocate_add()
314 sechdrs[relsec].sh_info); in apply_relocate_add()
316 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
[all …]
Dvpe.c305 Elf_Shdr * sechdrs, const char *secstrings) in layout_sections() argument
319 sechdrs[i].sh_entsize = ~0UL; in layout_sections()
323 Elf_Shdr *s = &sechdrs[i]; in layout_sections()
554 static int apply_relocations(Elf32_Shdr *sechdrs, in apply_relocations() argument
560 Elf32_Rel *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocations()
567 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocations()
571 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocations()
574 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocations()
609 static void simplify_symbols(Elf_Shdr * sechdrs, in simplify_symbols() argument
615 Elf_Sym *sym = (void *)sechdrs[symindex].sh_addr; in simplify_symbols()
[all …]
/arch/mn10300/kernel/
Dmodule.c56 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
63 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
70 relsec, sechdrs[relsec].sh_info); in apply_relocate_add()
72 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
74 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
79 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/c6x/kernel/
Dmodule.c45 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
51 Elf32_Rela *rel = (void *) sechdrs[relsec].sh_addr; in apply_relocate_add()
59 relsec, sechdrs[relsec].sh_info, offset); in apply_relocate_add()
61 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
63 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
68 sym = (Elf_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/xtensa/kernel/
Dmodule.c49 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
56 Elf32_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
63 sechdrs[relsec].sh_info); in apply_relocate_add()
65 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rela); i++) { in apply_relocate_add()
66 location = (char *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
68 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
/arch/alpha/kernel/
Dmodule.c76 module_frob_arch_sections(Elf64_Ehdr *hdr, Elf64_Shdr *sechdrs, in module_frob_arch_sections() argument
84 esechdrs = sechdrs + hdr->e_shnum; in module_frob_arch_sections()
90 for (s = sechdrs; s < esechdrs; ++s) in module_frob_arch_sections()
95 me->arch.gotsecindex = s - sechdrs; in module_frob_arch_sections()
122 for (s = sechdrs; s < esechdrs; ++s) in module_frob_arch_sections()
145 apply_relocate_add(Elf64_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
149 Elf64_Rela *rela = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
150 unsigned long i, n = sechdrs[relsec].sh_size / sizeof(*rela); in apply_relocate_add()
156 sechdrs[relsec].sh_info); in apply_relocate_add()
158 base = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr; in apply_relocate_add()
[all …]
/arch/arm/kernel/
Dmodule.c49 apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex, in apply_relocate() argument
52 Elf32_Shdr *symsec = sechdrs + symindex; in apply_relocate()
53 Elf32_Shdr *relsec = sechdrs + relindex; in apply_relocate()
54 Elf32_Shdr *dstsec = sechdrs + relsec->sh_info; in apply_relocate()
256 const Elf_Shdr *sechdrs, const char *name) in find_mod_section() argument
259 const char *secstrs = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in find_mod_section()
261 for (s = sechdrs, se = sechdrs + hdr->e_shnum; s < se; s++) in find_mod_section()
271 int module_finalize(const Elf32_Ehdr *hdr, const Elf_Shdr *sechdrs, in module_finalize() argument
276 const char *secstrs = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in module_finalize()
277 const Elf_Shdr *sechdrs_end = sechdrs + hdr->e_shnum; in module_finalize()
[all …]
/arch/s390/kernel/
Dmodule.c109 module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
121 switch (sechdrs[i].sh_type) { in module_frob_arch_sections()
123 symtab = sechdrs + i; in module_frob_arch_sections()
138 strings = (void *) hdr + sechdrs[symtab->sh_link].sh_offset; in module_frob_arch_sections()
154 if (sechdrs[i].sh_type != SHT_RELA) in module_frob_arch_sections()
156 nrela = sechdrs[i].sh_size / sizeof(Elf_Rela); in module_frob_arch_sections()
157 rela = (void *) hdr + sechdrs[i].sh_offset; in module_frob_arch_sections()
363 apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
374 relsec, sechdrs[relsec].sh_info); in apply_relocate_add()
375 base = sechdrs[sechdrs[relsec].sh_info].sh_addr; in apply_relocate_add()
[all …]
/arch/parisc/kernel/
Dmodule.c325 CONST Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
338 const Elf_Rela *rels = (void *)sechdrs[i].sh_addr; in module_frob_arch_sections()
339 unsigned long nrels = sechdrs[i].sh_size / sizeof(*rels); in module_frob_arch_sections()
342 if (strncmp(secstrings + sechdrs[i].sh_name, in module_frob_arch_sections()
346 if (sechdrs[i].sh_type != SHT_RELA) in module_frob_arch_sections()
366 s = sechdrs[i].sh_info; in module_frob_arch_sections()
544 int apply_relocate_add(Elf_Shdr *sechdrs, in apply_relocate_add() argument
551 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
558 unsigned int targetsec = sechdrs[relsec].sh_info; in apply_relocate_add()
564 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
[all …]
/arch/x86/vdso/
Dvma.c35 Elf32_Shdr *sechdrs, *alt_sec = 0; in patch_vdsox32() local
43 sechdrs = (void *)hdr + hdr->e_shoff; in patch_vdsox32()
44 secstrings = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in patch_vdsox32()
47 Elf32_Shdr *shdr = &sechdrs[i]; in patch_vdsox32()
67 Elf64_Shdr *sechdrs, *alt_sec = 0; in patch_vdso64() local
75 sechdrs = (void *)hdr + hdr->e_shoff; in patch_vdso64()
76 secstrings = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset; in patch_vdso64()
79 Elf64_Shdr *shdr = &sechdrs[i]; in patch_vdso64()
/arch/avr32/kernel/
Dmodule.c62 int module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs, in module_frob_arch_sections() argument
75 switch (sechdrs[i].sh_type) { in module_frob_arch_sections()
77 symtab = &sechdrs[i]; in module_frob_arch_sections()
93 strings = (void *)hdr + sechdrs[symtab->sh_link].sh_offset; in module_frob_arch_sections()
107 if (sechdrs[i].sh_type != SHT_RELA) in module_frob_arch_sections()
109 nrela = sechdrs[i].sh_size / sizeof(Elf32_Rela); in module_frob_arch_sections()
110 rela = (void *)hdr + sechdrs[i].sh_offset; in module_frob_arch_sections()
147 int apply_relocate_add(Elf32_Shdr *sechdrs, const char *strtab, in apply_relocate_add() argument
151 Elf32_Shdr *symsec = sechdrs + symindex; in apply_relocate_add()
152 Elf32_Shdr *relsec = sechdrs + relindex; in apply_relocate_add()
[all …]
/arch/m32r/kernel/
Dmodule.c71 int apply_relocate_add(Elf32_Shdr *sechdrs, in apply_relocate_add() argument
78 Elf32_Rela *rel = (void *)sechdrs[relsec].sh_addr; in apply_relocate_add()
89 sechdrs[relsec].sh_info); in apply_relocate_add()
90 for (i = 0; i < sechdrs[relsec].sh_size / sizeof(*rel); i++) { in apply_relocate_add()
92 location = (void *)sechdrs[sechdrs[relsec].sh_info].sh_addr in apply_relocate_add()
96 sym = (Elf32_Sym *)sechdrs[symindex].sh_addr in apply_relocate_add()
205 int apply_relocate(Elf32_Shdr *sechdrs, in apply_relocate() argument

12