/elf/ |
A D | tst-_dl_addr_inside_object.c | 32 struct link_map map; in do_test() local 34 map.l_phdr = &header; in do_test() 35 map.l_phnum = 1; in do_test() 36 map.l_addr = 0x0; in do_test() 43 ret = _dl_addr_inside_object (&map, addr); in do_test() 59 ret = _dl_addr_inside_object (&map, addr); in do_test() 75 ret = _dl_addr_inside_object (&map, addr); in do_test() 91 ret = _dl_addr_inside_object (&map, addr); in do_test() 194 map.l_addr = 0x0 - 0x1; in do_test() 195 map.l_addr = map.l_addr / 2; in do_test() [all …]
|
A D | dl-lookup-direct.c | 51 const char *strtab = (const void *) D_PTR (map, l_info[DT_STRTAB]); in ElfW() 57 ElfW(Half) ndx = map->l_versyms[symidx] & 0x7fff; in ElfW() 58 if (map->l_versions[ndx].hash != version_hash in ElfW() 59 || strcmp (map->l_versions[ndx].name, version) != 0) in ElfW() 71 _dl_lookup_direct (struct link_map *map, in ElfW() 75 const ElfW(Addr) *bitmask = map->l_gnu_bitmask; in ElfW() 78 Elf32_Word bucket = map->l_gnu_buckets[new_hash % map->l_nbuckets]; in ElfW() 87 const ElfW(Sym) *sym = check_match (map, undef_name, in ElfW() 104 for (Elf_Symndx symidx = map->l_buckets[old_hash % map->l_nbuckets]; in ElfW() 106 symidx = map->l_chain[symidx]) in ElfW() [all …]
|
A D | dl-version.c | 45 return map->l_searchlist.r_list[n]; in find_needed() 67 string, DSO_FILENAME (map->l_name), in match_symbol() 68 map->l_ns, name, ns); in match_symbol() 79 (&exception, DSO_FILENAME (map->l_name), in match_symbol() 170 if (map->l_info[DT_STRTAB] == NULL) in _dl_check_map_versions() 175 def = map->l_info[VERSYMIDX (DT_VERDEF)]; in _dl_check_map_versions() 218 map->l_ns, aux->vna_hash, in _dl_check_map_versions() 284 map->l_nversions = ndx_high + 1; in _dl_check_map_versions() 287 map->l_versyms = (void *) D_PTR (map, l_info[VERSYMIDX (DT_VERSYM)]); in _dl_check_map_versions() 343 map->l_versions[ndx].filename = NULL; in _dl_check_map_versions() [all …]
|
A D | loadtest.c | 78 for (map = MAPS; map != NULL; map = map->l_next) \ 79 if (map->l_type == lt_loaded) \ 81 map->l_name, (int) map->l_direct_opencount); \ 93 struct link_map *map; in main() local 156 for (map = MAPS; map != NULL; map = map->l_next) in main() 157 if (map->l_type == lt_loaded in main() 159 || strstr (map->l_name, testobjs[1].name) != NULL in main() 162 printf ("`%s' is still loaded\n", map->l_name); in main() 189 for (map = MAPS; map != NULL; map = map->l_next) in main() 190 if (map->l_type == lt_loaded) in main() [all …]
|
A D | dynamic-link.h | 35 elf_machine_rel (struct link_map *map, struct r_scope_elem *scope[], 45 elf_machine_rela (struct link_map *map, struct r_scope_elem *scope[], 87 if ((map)->l_info[DT_##RELOC]) \ 89 ranges[0].start = D_PTR ((map), l_info[DT_##RELOC]); \ 91 if (map->l_info[VERSYMIDX (DT_##RELOC##COUNT)] != NULL) \ 95 if ((map)->l_info[DT_PLTREL] \ 98 ElfW(Addr) start = D_PTR ((map), l_info[DT_JMPREL]); \ 99 ElfW(Addr) size = (map)->l_info[DT_PLTRELSZ]->d_un.d_val; \ 118 elf_dynamic_do_##reloc ((map), scope, \ 134 # define ELF_DYNAMIC_DO_REL(map, scope, lazy, skip_ifunc) \ argument [all …]
|
A D | unload2.c | 12 for (map = MAPS; map != NULL; map = map->l_next) \ 13 if (map->l_type == lt_loaded) \ 15 map->l_name, (int) map->l_direct_opencount); \ 22 struct link_map *map; in main() local
|
A D | dl-deps.c | 49 struct link_map *map; member 77 *p++ = map; in _dl_build_local_scope() 78 map->l_reserved = 1; in _dl_build_local_scope() 79 if (map->l_initfini) in _dl_build_local_scope() 145 known[*nlist].map = map; in preload() 152 map->l_reserved = 1; in preload() 232 args.map = l; in _dl_map_object_deps() 468 if (map->l_initfini != NULL && map->l_type == lt_loaded) in _dl_map_object_deps() 497 if (runp->map == map) in _dl_map_object_deps() 499 map->l_searchlist.r_list[nlist++] = runp->map; in _dl_map_object_deps() [all …]
|
A D | dl-static-tls.h | 31 #define HAVE_STATIC_TLS(map, sym_map) \ argument 36 #define CHECK_STATIC_TLS(map, sym_map) \ argument 38 if (!HAVE_STATIC_TLS (map, sym_map)) \ 42 #define TRY_STATIC_TLS(map, sym_map) \ argument 48 int _dl_try_allocate_static_tls (struct link_map *map, bool optional)
|
A D | unload.c | 15 for (map = MAPS; map != NULL; map = map->l_next) \ 16 if (map->l_type == lt_loaded) \ 18 map->l_name, (int) map->l_direct_opencount); \ 33 struct link_map *map; in main() local
|
A D | tst-auditmanymod.h | 36 la_objopen (struct link_map *map, Lmid_t lmid, in la_objopen() argument 41 MOD, map, map->l_name, cookie, cookie_map, in la_objopen() 42 (char *) cookie - (char *) map); in la_objopen() 44 if (map != cookie_map) in la_objopen()
|
A D | dl-lookup.c | 182 table[idx].map = map; in enter_unique_sym() 243 result->m = map; in do_lookup_unique() 331 if (map->l_type == lt_loaded && !is_nodelete (map, flags)) in do_lookup_unique() 338 map->l_name, map->l_ns); in do_lookup_unique() 392 map->l_ns); in do_lookup_x() 452 for (symidx = map->l_buckets[*old_hash % map->l_nbuckets]; in do_lookup_x() 651 map = atomic_forced_read (map); in add_dependency() 728 map->l_name, map->l_ns); in add_dependency() 732 map->l_name, map->l_ns, in add_dependency() 764 map->l_name, map->l_ns); in add_dependency() [all …]
|
A D | tst-auditmod22.c | 41 la_objopen (struct link_map *map, Lmid_t lmid, uintptr_t *cookie) in la_objopen() argument 45 if (map->l_addr == 0 && startswith (map->l_name, "linux-gate.so")) in la_objopen() 47 else if (map->l_addr == getauxval (AT_SYSINFO_EHDR)) in la_objopen() 48 fprintf (stderr, "vdso found: %p\n", (void*) map->l_addr); in la_objopen()
|
A D | tlsdeschtab.h | 47 map_generation (struct link_map *map) in map_generation() argument 49 size_t idx = map->l_tls_modid; in map_generation() 62 if (listp->slotinfo[idx].map == map && listp->slotinfo[idx].gen) in map_generation() 85 _dl_make_tlsdesc_dynamic (struct link_map *map, size_t ti_offset) in _dl_make_tlsdesc_dynamic() argument 91 ht = map->l_mach.tlsdesc_table; in _dl_make_tlsdesc_dynamic() 97 map->l_mach.tlsdesc_table = ht; in _dl_make_tlsdesc_dynamic() 100 test.tlsinfo.ti_module = map->l_tls_modid; in _dl_make_tlsdesc_dynamic() 116 td->gen_count = map_generation (map); in _dl_make_tlsdesc_dynamic()
|
A D | do-rel.h | 30 # define DO_ELF_MACHINE_REL_RELATIVE(map, l_addr, relative) \ argument 48 ElfW(Addr) l_addr = map->l_addr; 71 elf_machine_lazy_rel (map, scope, l_addr, r, skip_ifunc); 84 (const void *) D_PTR (map, l_info[DT_SYMTAB]); 108 if (l_addr != 0 || ! map->l_info[VALIDX(DT_GNU_PRELINKED)]) 112 DO_ELF_MACHINE_REL_RELATIVE (map, l_addr, relative); 116 assert (map->l_info[VERSYMIDX (DT_VERSYM)] != NULL); 118 if (map->l_info[VERSYMIDX (DT_VERSYM)]) 138 &map->l_versions[ndx], 149 elf_machine_rel (map, scope, r2, [all …]
|
A D | dl-reloc.c | 68 size_t blsize = map->l_tls_blocksize + map->l_tls_firstbyte_offset; in _dl_try_allocate_static_tls() 75 size_t use = freebytes - n * map->l_tls_align - map->l_tls_firstbyte_offset; in _dl_try_allocate_static_tls() 87 - map->l_tls_firstbyte_offset, in _dl_try_allocate_static_tls() 88 map->l_tls_align) in _dl_try_allocate_static_tls() 89 + map->l_tls_firstbyte_offset); in _dl_try_allocate_static_tls() 102 map->l_tls_offset = offset; in _dl_try_allocate_static_tls() 111 if (map->l_real->l_relocated) in _dl_try_allocate_static_tls() 121 dl_init_static_tls (map); in _dl_try_allocate_static_tls() 124 map->l_need_tls_init = 1; in _dl_try_allocate_static_tls() 160 memset (__mempcpy (dest, map->l_tls_initimage, map->l_tls_initimage_size), in _dl_nothread_init_static_tls() [all …]
|
A D | dl-tls.c | 564 map = listp->slotinfo[cnt].map; in _dl_allocate_tls_init() 565 if (map == NULL) in _dl_allocate_tls_init() 582 assert (map->l_tls_blocksize >= map->l_tls_initimage_size); in _dl_allocate_tls_init() 584 assert ((size_t) map->l_tls_offset >= map->l_tls_blocksize); in _dl_allocate_tls_init() 599 map->l_tls_blocksize - map->l_tls_initimage_size); in _dl_allocate_tls_init() 699 (map->l_tls_align, map->l_tls_blocksize); in allocate_and_init() 706 '\0', map->l_tls_blocksize - map->l_tls_initimage_size); in allocate_and_init() 797 if (map == NULL) in _dl_update_slotinfo() 819 the_map = map; in _dl_update_slotinfo() 1074 memset (__mempcpy (dest, map->l_tls_initimage, map->l_tls_initimage_size), in init_one_static_tls() [all …]
|
A D | dl-libc.c | 67 struct link_map *map; member 73 struct link_map *map; member 106 args->map->l_local_scope, NULL, 0, in do_dlsym() 118 args->dlsym.map->l_local_scope, in do_dlvsym() 143 args->map->l_scope, &vers, 0, 0, NULL); in do_dlsym_private() 170 sargs.map = map; in __libc_dlsym_private() 180 __libc_dlsym (void *map, const char *name) in __libc_dlsym() argument 183 args.map = map; in __libc_dlsym() 206 args.dlsym.map = map; in __libc_dlvsym() 221 __libc_dlclose (void *map) in __libc_dlclose() argument [all …]
|
A D | dl-symaddr.c | 23 _dl_symbol_address (struct link_map *map, const ElfW(Sym) *ref) in _dl_symbol_address() argument 25 ElfW(Addr) value = SYMBOL_ADDRESS (map, ref, false); in _dl_symbol_address() 29 return (void *) _dl_make_fptr (map, ref, value); in _dl_symbol_address()
|
A D | dl-sym.c | 45 _dl_tls_symaddr (struct link_map *map, const ElfW(Sym) *ref) in _dl_tls_symaddr() argument 50 .ti_module = map->l_tls_modid, in _dl_tls_symaddr() 56 return __TLS_GET_ADDR (map->l_tls_modid, ref->st_value); in _dl_tls_symaddr() 65 struct link_map *map; member 79 args->map = GLRO(dl_lookup_symbol_x) (args->name, args->map, args->refp, in call_dl_lookup() 80 args->map->l_scope, args->vers, 0, in call_dl_lookup() 113 args.map = match; in do_sym() 126 result = args.map; in do_sym() 152 struct link_map *map = handle; in do_sym() local 153 result = GLRO(dl_lookup_symbol_x) (name, map, &ref, map->l_local_scope, in do_sym()
|
A D | dl-fptr.c | 167 make_fptr_table (struct link_map *map) in ElfW() 180 / map->l_info[DT_SYMENT]->d_un.d_val); in ElfW() 196 map->l_mach.fptr_table_len = len; in ElfW() 200 return map->l_mach.fptr_table; in ElfW() 208 ElfW(Addr) *ftab = map->l_mach.fptr_table; in _dl_make_fptr() 214 ftab = make_fptr_table (map); in _dl_make_fptr() 219 if (symidx >= map->l_mach.fptr_table_len) in _dl_make_fptr() 267 _dl_unmap (struct link_map *map) in _dl_unmap() argument 269 ElfW(Addr) *ftab = map->l_mach.fptr_table; in _dl_unmap() 273 _dl_unmap_segments (map); in _dl_unmap() [all …]
|
A D | dl-sort-maps.c | 140 dfs_traversal (struct link_map ***rpo, struct link_map *map, in dfs_traversal() argument 143 if (map->l_visited) in dfs_traversal() 146 map->l_visited = 1; in dfs_traversal() 148 if (map->l_initfini) in dfs_traversal() 150 for (int i = 0; map->l_initfini[i] != NULL; i++) in dfs_traversal() 152 struct link_map *dep = map->l_initfini[i]; in dfs_traversal() 159 if (__glibc_unlikely (do_reldeps != NULL && map->l_reldeps != NULL)) in dfs_traversal() 165 for (int m = map->l_reldeps->act - 1; m >= 0; m--) in dfs_traversal() 167 struct link_map *dep = map->l_reldeps->list[m]; in dfs_traversal() 175 **rpo = map; in dfs_traversal()
|
A D | rtld_static_init.c | 46 __rtld_static_init (struct link_map *map) in __rtld_static_init() argument 49 = _dl_lookup_direct (map, "_rtld_global_ro", in __rtld_static_init() 54 struct rtld_global_ro *dl = DL_SYMBOL_ADDRESS (map, sym); in __rtld_static_init() 83 __rtld_static_init_arch (map, dl); in __rtld_static_init()
|
A D | dl-close.c | 118 struct link_map *map = closure; in call_destructors() local 123 (ElfW(Addr) *) (map->l_addr in call_destructors() 133 if (map->l_info[DT_FINI] != NULL) in call_destructors() 134 DL_CALL_DT_FINI (map, ((void *) map->l_addr in call_destructors() 142 --map->l_direct_opencount; in _dl_close_worker() 149 if (map->l_direct_opencount > 0 || map->l_type != lt_loaded in _dl_close_worker() 152 if (map->l_direct_opencount == 0 && map->l_type == lt_loaded) in _dl_close_worker() 158 map->l_name, map->l_direct_opencount); in _dl_close_worker() 163 Lmid_t nsid = map->l_ns; in _dl_close_worker() 784 struct link_map *map = _map; in _dl_close() local [all …]
|
A D | dl-conflict.c | 35 #define RESOLVE_MAP(map, scope, ref, version, flags) (*ref = NULL, NULL) argument 37 #define RESOLVE_CONFLICT_FIND_MAP(map, r_offset) \ argument 43 (map) = resolve_conflict_map; \
|
A D | dl-find_object.h | 37 struct link_map *map; /* Set to NULL by dlclose. */ member 54 external->dlfo_link_map = internal->map; in _dl_find_object_to_external() 72 result->map = l; in _dl_find_object_from_map()
|