From 7129c310626a276f171da52fb0cbddd5c16b5a9b Mon Sep 17 00:00:00 2001 From: Bernd Schmidt Date: Tue, 4 Dec 2007 02:14:39 +0000 Subject: Blackfin FD-PIC patch 6/6. These are mostly the changes necessary to deal with loading the libraries into memory. A couple new target macros are defined for this purpose, and the code in dl-elf.c is modified to deal with nommu systems. --- ldso/libdl/libdl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'ldso/libdl') diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c index 4e909a16f..d21f8a6fd 100644 --- a/ldso/libdl/libdl.c +++ b/ldso/libdl/libdl.c @@ -587,7 +587,7 @@ static int do_dlclose(void *vhandle, int need_fini) if (end < ppnt->p_vaddr + ppnt->p_memsz) end = ppnt->p_vaddr + ppnt->p_memsz; } - _dl_munmap((void*)tpnt->loadaddr, end); + DL_LIB_UNMAP (tpnt, end); /* Free elements in RTLD_LOCAL scope list */ for (runp = tpnt->rtld_local; runp; runp = tmp) { tmp = runp->next; @@ -713,6 +713,8 @@ int dladdr(const void *__address, Dl_info * __info) _dl_if_debug_print("__address: %p __info: %p\n", __address, __info); + __address = DL_LOOKUP_ADDRESS (__address); + for (rpnt = _dl_loaded_modules; rpnt; rpnt = rpnt->next) { struct elf_resolve *tpnt; -- cgit v1.2.3