diff options
author | Roland McGrath <roland@gnu.org> | 2002-10-17 12:10:17 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2002-10-17 12:10:17 +0000 |
commit | 2430d57a13f4f10312e13c58962cd9104e6428fd (patch) | |
tree | 6690ca0a7115c798e9c34cf24f55acf14311d661 /linuxthreads | |
parent | d29724f8706e4e46994d6fabafc8389f7624cd0f (diff) | |
download | glibc-2430d57a13f4f10312e13c58962cd9104e6428fd.tar.gz glibc-2430d57a13f4f10312e13c58962cd9104e6428fd.tar.xz glibc-2430d57a13f4f10312e13c58962cd9104e6428fd.zip |
* elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
* elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro to signal error if an IE-model TLS reloc resolved to a dlopen'd module. * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela): Call it after performing TPOFF relocs. * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise. * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise. * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op). * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash when closing a partially-initialized object. * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose instead of _dl_fatal_printf when we see PT_TLS.
Diffstat (limited to 'linuxthreads')
-rw-r--r-- | linuxthreads/ChangeLog | 6 | ||||
-rw-r--r-- | linuxthreads/Makefile | 3 | ||||
-rw-r--r-- | linuxthreads/unload.c | 6 |
3 files changed, 11 insertions, 4 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 71b00fa253..6b185a02e8 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,9 @@ +2002-10-17 Roland McGrath <roland@redhat.com> + + * Makefile (unload): Don't link in libpthread.so. + ($(objpfx)unload.out): Do depend on it. + * unload.c (main): Improve error reporting. + 2002-10-09 Roland McGrath <roland@redhat.com> * sysdeps/pthread/bits/libc-lock.h (__libc_maybe_call): New macro. diff --git a/linuxthreads/Makefile b/linuxthreads/Makefile index 230c75f4f6..772c691475 100644 --- a/linuxthreads/Makefile +++ b/linuxthreads/Makefile @@ -98,10 +98,11 @@ $(objpfx)libpthread.so: $(common-objpfx)libc.so \ # Make sure we link with the thread library. ifeq ($(build-shared),yes) $(addprefix $(objpfx), \ - $(filter-out $(tests-static), \ + $(filter-out $(tests-static) unload, \ $(tests) $(test-srcs))): $(objpfx)libpthread.so $(addprefix $(objpfx),$(librt-tests)): $(common-objpfx)rt/librt.so $(objpfx)unload: $(common-objpfx)dlfcn/libdl.so +$(objpfx)unload.out: $(objpfx)libpthread.so else $(addprefix $(objpfx),$(tests) $(test-srcs)): $(objpfx)libpthread.a $(addprefix $(objpfx),$(librt-tests)): $(common-objpfx)rt/librt.a diff --git a/linuxthreads/unload.c b/linuxthreads/unload.c index ca949196b4..234d27f904 100644 --- a/linuxthreads/unload.c +++ b/linuxthreads/unload.c @@ -1,5 +1,5 @@ /* Tests for non-unloading of libpthread. - Copyright (C) 2000 Free Software Foundation, Inc. + Copyright (C) 2000, 2002 Free Software Foundation, Inc. Contributed by Ulrich Drepper <drepper@redhat.com>, 2000. The GNU C Library is free software; you can redistribute it and/or @@ -29,13 +29,13 @@ main (void) if (p == NULL) { - puts ("failed to load " LIBPTHREAD_SO); + printf ("failed to load %s: %s\n", LIBPTHREAD_SO, dlerror ()); exit (1); } if (dlclose (p) != 0) { - puts ("dlclose (" LIBPTHREAD_SO ") failed"); + printf ("dlclose (%s) failed: %s\n", LIBPTHREAD_SO, dlerror ()); exit (1); } |