Ulrich Drepper [Sat, 22 Jan 2005 07:55:35 +0000 (07:55 +0000)]
Update.
2005-01-21 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile: Add rules to build and run tst-align2.
* elf/tst-align2.c: New test.
* elf/tst-alignmod2.c: New file.
* sysdeps/powerpc/tst-stack-align.h: New file.
* sysdeps/i386/dl-machine.h (RTLD_START): Align stack and clear frame
pointer before calling _dl_init.
* sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
Ulrich Drepper [Thu, 20 Jan 2005 20:10:02 +0000 (20:10 +0000)]
Update.
2005-01-20 Ulrich Drepper <drepper@redhat.com>
* posix/execl.c: Do not allocate potentially large buffers on the
stack.
* posix/execle.c: Likewise.
* posix/execlp.c: Likewise.
* posix/execlp.c: Likewise.
(script_execute): Removed.
(allocate_scripts_argv): New function. Called at most once to
allocate memory, not every time a script is run. Adjust caller.
* sysdeps/generic/wordexp.c (exec_comm): Add a few
TEMP_FAILURE_RETRY. Reorganize code to avoid multiple calls to
exec_comm_child.
(exec_comm_child): Can now be inlined.
* posix/Makefile: Add -fomit-frame-pointer for a few more files.
* stdlib/Makefile: Likewise.
Roland McGrath [Wed, 19 Jan 2005 19:28:21 +0000 (19:28 +0000)]
[BZ #681]
2005-01-19 Roland McGrath <roland@redhat.com>
[BZ #681]
* sunrpc/openchild.c (_openchild): Use NULL instead of 0 for trailing
argument to execlp.
Reported by Marcus Meissner <meissner@suse.de>.
Roland McGrath [Tue, 18 Jan 2005 01:21:47 +0000 (01:21 +0000)]
* nscd/Makefile (LDLIBS-nscd): New variable.
($(objpfx)nscd): Use that instead of selinux-LIBS.
* Makeconfig (link-extra-libs): Define just as $(LDLIBS-$(@F)).
(link-extra-libs-static): Define to $(link-extra-libs).
(link-extra-libs-bounded): Likewise.
ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
(elf_machine_runtime_setup): If profile != 0 does not anymore mean
GLRO(dl_profile) != NULL.
* sysdeps/m68k/dl-trampoline.S: New file.
* sysdeps/m68k/bits/link.h: New file.
* sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k
variants.
* elf/tst-auditmod1.c: Add m68k support.
2005-01-16 Andreas Schwab <schwab@suse.de>
* sysdeps/m68k/dl-machine.h: Remove trampoline code. Define
ARCH_LA_PLTENTER and ARCH_LA_PLTEXIT.
(elf_machine_runtime_setup): If profile != 0 does not anymore mean
GLRO(dl_profile) != NULL.
* sysdeps/m68k/dl-trampoline.S: New file.
* sysdeps/m68k/bits/link.h: New file.
* sysdeps/generic/ldsodefs.h (struct audit_ifaces): Add m68k
variants.
* elf/tst-auditmod1.c: Add m68k support.
Ulrich Drepper [Sun, 9 Jan 2005 20:13:03 +0000 (20:13 +0000)]
* pthread.c (init_one_static_tls): Adjust initialization of DTV
entry for static tls deallocation fix.
* sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which
also contains information whether the memory pointed to is static
TLS or not, include <stdbool.h>.
* sysdeps/i386/tls.h: Likewise.
* sysdeps/ia64/tls.h: Likewise.
* sysdeps/powerpc/tls.h: Likewise.
* sysdeps/s390/tls.h: Likewise.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/sparc/tls.h: Likewise.
* sysdeps/x86_64/tls.h: Likewise.
Ulrich Drepper [Sun, 9 Jan 2005 08:29:25 +0000 (08:29 +0000)]
Update.
2005-01-09 Ulrich Drepper <drepper@redhat.com>
* elf/dl-debug.c (_dl_debug_initialize): Take extra parameter and
use it to select the r_debug structure for that namespace.
* elf/dl-close.c (_dl_close): Adjust call to _dl_debug_initialize.
* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
* elf/dl-open.c (_dl_open): Likewise.
* elf/rtld.c (dl_main): Likewise.
* sysdeps/generic/ldsodefs.h (struct link_namespaces): Add _ns_debug
member.
(_dl_debug_initialize): Add new parameter in declaration.
* elf/dl-close.c (_dl_close): Make sure auditing callbacks are not
called for the auditing objects themselves.
* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
Ulrich Drepper [Sat, 8 Jan 2005 07:10:00 +0000 (07:10 +0000)]
Update.
* sysdeps/powerpc/powerpc64/dl-machine.h
(elf_machine_runtime_setup): If profile != 0 does not anymore mean
GLRO(dl_profile) != NULL.
* sysdeps/powerpc/powerpc64/bits/link.h (struct la_ppc64_regs): Add
padding.
* sysdeps/powerpc/powerpc64/dl-trampoline.S: (_dl_profile_resolve):
Extend _dl_prof_resolve to add pass extra parameters to
_dl_profile_fixup and set up structure with register content.
Ulrich Drepper [Sat, 8 Jan 2005 05:47:47 +0000 (05:47 +0000)]
Update.
* sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_runtime_setup):
If profile != 0 does not anymore mean GLRO(dl_profile) != NULL.
* sysdeps/powerpc/powerpc32/bits/link.h: Fix types of some fields in
the register and result structures.
* sysdeps/powerpc/powerpc64/bits/link.h: Fix types of some fields
in the 32-bit register and result structures.
Ulrich Drepper [Sat, 8 Jan 2005 05:41:58 +0000 (05:41 +0000)]
Update.
* sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_prof_resolve):
Extend _dl_prof_resolve to add pass extra parameters to
_dl_profile_fixup and set up structure with register content.
Ulrich Drepper [Fri, 7 Jan 2005 19:42:24 +0000 (19:42 +0000)]
Update.
* misc/sys/cdefs.h (__attribute_warn_unused_result__): Define.
* stdlib/stdlib.h: Make realloc with
__attribute_warn_unused_result__ instead of __wur.
* malloc/malloc.h: Add __wur and __attribute_warn_unused_result__
markers as in <stdlib.h>.
Ulrich Drepper [Thu, 6 Jan 2005 22:42:11 +0000 (22:42 +0000)]
Update.
* csu/elf-init.c (__libc_csu_fini): Don't do anything here.
* sysdeps/generic/libc-start.c: Don't register program destructor here.
* dlfcn/Makefile: Add rules to build dlfcn.c.
(LDFLAGS-dl.so): Removed.
* dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
table.
* dlfcn/dlmopen.c: Likewise for _dl_open.
* dlfcn/dlopen.c: Likewise.
* dlfcn/dlopenold.c: Likewise.
* elf/dl-libc.c: Likewise for _dl_open and _dl_close.
* elf/Makefile (routines): Remove dl-open and dl-close.
(dl-routines): Add dl-open, dl-close, and dl-trampoline.
Add rules to build and run tst-audit1.
* elf/tst-audit1.c: New file.
* elf/tst-auditmod1.c: New file.
* elf/Versions [libc]: Remove _dl_open and _dl_close.
* elf/dl-close.c: Change for use inside ld.so instead of libc.so.
* elf/dl-open.c: Likewise.
* elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
signaled by nonzero parameter.
* elf/dl-init.c: Fix use of r_state.
* elf/dl-load.c: Likewise.
* elf/dl-close.c: Add auditing checkpoints.
* elf/dl-open.c: Likewise.
* elf/dl-fini.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-sym.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* elf/dl-object.c: Allocate memory for auditing information.
* elf/dl-reloc.c: Remove RESOLV. We now always need the map.
Correctly initialize slotinfo.
* elf/dynamic-link.h: Adjust after removal of RESOLV.
* sysdeps/hppa/dl-lookupcfg.h: Likewise.
* sysdeps/ia64/dl-lookupcfg.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
* elf/dl-runtime.c (_dl_fixup): Little cleanup.
(_dl_profile_fixup): New parameters to point to register struct and
variable for frame size.
Add auditing checkpoints.
(_dl_call_pltexit): New function.
Don't define trampoline code here.
* elf/rtld.c: Recognize LD_AUDIT. Load modules on startup.
Remove all the functions from _rtld_global_ro which only _dl_open
and _dl_close needed.
Add auditing checkpoints.
* elf/link.h: Define symbols for auditing interfaces.
* include/link.h: Likewise.
* include/dlfcn.h: Define __RTLD_AUDIT.
Remove prototypes for _dl_open and _dl_close.
Adjust access to argc and argv in libdl.
* dlfcn/dlfcn.c: New file.
* sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
is gone.
* sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
* sysdeps/generic/unsecvars.h: Add LD_AUDIT.
* sysdeps/i386/dl-machine.h: Remove trampoline code here.
Adjust for removal of RESOLVE.
* sysdeps/x86_64/dl-machine.h: Likewise.
* sysdeps/generic/dl-trampoline.c: New file.
* sysdeps/i386/dl-trampoline.c: New file.
* sysdeps/x86_64/dl-trampoline.c: New file.
* sysdeps/generic/dl-tls.c: Cleanups. Fixup for dtv_t change.
Fix updating of DTV.
* sysdeps/generic/libc-tls.c: Likewise.
Ulrich Drepper [Thu, 6 Jan 2005 22:40:27 +0000 (22:40 +0000)]
* csu/elf-init.c (__libc_csu_fini): Don't do anything here.
* sysdeps/generic/libc-start.c: Don't register program destructor here.
* dlfcn/Makefile: Add rules to build dlfcn.c.
(LDFLAGS-dl.so): Removed.
* dlfcn/dlclose.c: _dl_close is now in ld.so, use function pointer
table.
* dlfcn/dlmopen.c: Likewise for _dl_open.
* dlfcn/dlopen.c: Likewise.
* dlfcn/dlopenold.c: Likewise.
* elf/dl-libc.c: Likewise for _dl_open and _dl_close.
* elf/Makefile (routines): Remove dl-open and dl-close.
(dl-routines): Add dl-open, dl-close, and dl-trampoline.
Add rules to build and run tst-audit1.
* elf/tst-audit1.c: New file.
* elf/tst-auditmod1.c: New file.
* elf/Versions [libc]: Remove _dl_open and _dl_close.
* elf/dl-close.c: Change for use inside ld.so instead of libc.so.
* elf/dl-open.c: Likewise.
* elf/dl-debug.c (_dl_debug_initialize): Allow reinitialization,
signaled by nonzero parameter.
* elf/dl-init.c: Fix use of r_state.
* elf/dl-load.c: Likewise.
* elf/dl-close.c: Add auditing checkpoints.
* elf/dl-open.c: Likewise.
* elf/dl-fini.c: Likewise.
* elf/dl-load.c: Likewise.
* elf/dl-sym.c: Likewise.
* sysdeps/generic/libc-start.c: Likewise.
* elf/dl-object.c: Allocate memory for auditing information.
* elf/dl-reloc.c: Remove RESOLV. We now always need the map.
Correctly initialize slotinfo.
* elf/dynamic-link.h: Adjust after removal of RESOLV.
* sysdeps/hppa/dl-lookupcfg.h: Likewise.
* sysdeps/ia64/dl-lookupcfg.h: Likewise.
* sysdeps/powerpc/powerpc64/dl-lookupcfg.h: Removed.
* elf/dl-runtime.c (_dl_fixup): Little cleanup.
(_dl_profile_fixup): New parameters to point to register struct and
variable for frame size.
Add auditing checkpoints.
(_dl_call_pltexit): New function.
Don't define trampoline code here.
* elf/rtld.c: Recognize LD_AUDIT. Load modules on startup.
Remove all the functions from _rtld_global_ro which only _dl_open
and _dl_close needed.
Add auditing checkpoints.
* elf/link.h: Define symbols for auditing interfaces.
* include/link.h: Likewise.
* include/dlfcn.h: Define __RTLD_AUDIT.
Remove prototypes for _dl_open and _dl_close.
Adjust access to argc and argv in libdl.
* dlfcn/dlfcn.c: New file.
* sysdeps/generic/dl-lookupcfg.h: Remove all content now that RESOLVE
is gone.
* sysdeps/generic/ldsodefs.h: Add definitions for auditing interfaces.
* sysdeps/generic/unsecvars.h: Add LD_AUDIT.
* sysdeps/i386/dl-machine.h: Remove trampoline code here.
Adjust for removal of RESOLVE.
* sysdeps/x86_64/dl-machine.h: Likewise.
* sysdeps/generic/dl-trampoline.c: New file.
* sysdeps/i386/dl-trampoline.c: New file.
* sysdeps/x86_64/dl-trampoline.c: New file.
* sysdeps/generic/dl-tls.c: Cleanups. Fixup for dtv_t change.
Fix updating of DTV.
* sysdeps/generic/libc-tls.c: Likewise.
* allocatestack.c (init_one_static_tls): Adjust initialization of DTV
entry for static tls deallocation fix.
* sysdeps/alpha/tls.h (dtv_t): Change pointer type to be struct which
also contains information whether the memory pointed to is static
TLS or not.
* sysdeps/i386/tls.h: Likewise.
* sysdeps/ia64/tls.h: Likewise.
* sysdeps/powerpc/tls.h: Likewise.
* sysdeps/s390/tls.h: Likewise.
* sysdeps/sh/tls.h: Likewise.
* sysdeps/sparc/tls.h: Likewise.
* sysdeps/x86_64/tls.h: Likewise.
Ulrich Drepper [Thu, 6 Jan 2005 11:32:24 +0000 (11:32 +0000)]
Update.
2004-12-29 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ia64/fpu/libm_support.h (__libm_error_support): Use
libc_hidden_proto instead of HIDDEN_PROTO.
* sysdeps/ia64/fpu/libm-symbols.h (HIDDEN_PROTO): Remove.
(__libm_error_support): If ASSEMBLER and in libc, define to
HIDDEN_JUMPTARGET(__libm_error_support).
2004-12-28 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/fpu/Makefile (duplicated-routines): New macro.
(sysdep_routines): Replace libm_ldexp{,f,l} and libm_scalbn{,f,l}
with $(duplicated-routines).
(libm-sysdep_routines): Likewise, but substitute "s_" prefix for
"m_" prefix.
2004-12-27 David Mosberger <davidm@hpl.hp.com>
* sysdeps/ia64/fpu/libm-symbols.h: Add include of <sysdep.h> and
undefine "ret" macro. Add __libm_error_support hidden definitions.
Ulrich Drepper [Thu, 6 Jan 2005 00:42:22 +0000 (00:42 +0000)]
Update.
* libio/iofopncook.c (_IO_cookie_seekoff): Define. Mark offset as
invalid to disable optimizations in fileops which won't work here.
(_IO_cookie_jumps): Use it.
(_IO_old_cookie_jumps): Likewise.
* libio/fmemopen.c (fmemopen_seek): Result must be returned in *P,
not the return value.
* stdio-common/Makefile (tests): Add tst-fmemopen2.
* stdio-common/tst-fmemopen2.c: New file.
Roland McGrath [Wed, 29 Dec 2004 09:18:40 +0000 (09:18 +0000)]
[BZ #626]
2004-12-29 Roland McGrath <roland@redhat.com>
[BZ #626]
* sysdeps/unix/alarm.c (alarm): Round return value to nearest rather
than always up; when nearest is zero, round up to one.
Roland McGrath [Wed, 29 Dec 2004 09:17:26 +0000 (09:17 +0000)]
[BZ #626]
2004-12-29 Roland McGrath <roland@redhat.com>
[BZ #626]
* sysdeps/unix/alarm.c (alarm): Round return value to nearest rather
than always up; when nearest is zero, round up to one.
Ulrich Drepper [Mon, 27 Dec 2004 16:44:39 +0000 (16:44 +0000)]
Update.
2004-04-27 Paolo Bonzini <bonzini@gnu.org>
* posix/regex_internal.h (struct re_dfastate_t): Make
word_trtable a pointer to the 512-item transition table.
* posix/regexec.c (build_trtable): Fill in either state->trtable
or state->word_trtable. Return a boolean indicating success.
(transit_state): Expect state->trtable to be a 256-item
transition table. Reorganize code to have less tests in
the common case, and to save an indentation level.
New variables.
(options, parse_opt, main): Take new options --nostdlib and
--output/-o to set them. Under --nostdlib, skip GCONV_PATH dirs.
(write_output): If output_file is set, write the output there.
Roland McGrath [Sun, 19 Dec 2004 23:23:42 +0000 (23:23 +0000)]
2004-12-19 Roland McGrath <roland@redhat.com>
* iconv/iconvconfig.c (nostdlib, output_file, output_file_len):
New variables.
(options, parse_opt, main): Take new options --nostdlib and
--output/-o to set them. Under --nostdlib, skip GCONV_PATH dirs.
(write_output): If output_file is set, write the output there.
* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support for NPTL where the PID is stored at userlevel and needs to be reset when CLONE_THREAD is not used. nptl/ * sysdeps/unix/sysv/linux/alpha/clone.S: New file. * sysdeps/alpha/tcb-offsets.sym (TID_OFFSET): New.
2004-12-17 Richard Henderson <rth@redhat.com>
* sysdeps/unix/sysv/linux/alpha/clone.S (__clone): Add support
for NPTL where the PID is stored at userlevel and needs to be
reset when CLONE_THREAD is not used.