Commit Graph

3402 Commits

Author SHA1 Message Date
Richard Henderson
1ba6212c8b * sysdeps/alpha/dl-trampoline.S: New file.
* sysdeps/alpha/dl-machine.h: Move PLT trampolines there.
        Use RESOLVE_MAP instead of RESOLVE to protect relocation code.
        (elf_machine_runtime_setup): Test for dl_profile non-null.
        (ARCH_LA_PLTENTER, ARCH_LA_PLTEXIT): New.
        * sysdeps/alpha/bits/link.h: New file.
        * sysdeps/generic/ldsodefs.h (La_alpha_regs, La_alpha_retval): New.
        (struct audit_ifaces): Add alpha entries.
        * elf/tst-auditmod1.c: Add alpha entries.
2005-01-23 08:02:38 +00:00
Andreas Schwab
00f36bfbb7 * 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.
2005-01-16 02:07:29 +00:00
Ulrich Drepper
cac7d7f9a1 (__tls_get_addr): Updated for dtv_t union. 2005-01-12 02:41:50 +00:00
Ulrich Drepper
e9c3f06f28 * 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.

	* sysdeps/arm/bits/link.h: Renamed to ...
	* sysdeps/arm/buts/linkmap.h: ...this.
	* sysdeps/generic/bits/link.h: Renamed to...
	* sysdeps/generic/bits/linkmap.h: ...this.
	* sysdeps/hppa/bits/link.h: Renamed to...
	* sysdeps/hppa/bits/linkmap.h: ...this.
	* sysdeps/hppa/i386/link.h: Renamed to...
	* sysdeps/hppa/i386/linkmap.h: ...this.
	* sysdeps/hppa/ia64/link.h: Renamed to...
	* sysdeps/hppa/ia64/linkmap.h: ...this.
	* sysdeps/hppa/s390/link.h: Renamed to...
	* sysdeps/hppa/s390/linkmap.h: ...this.
	* sysdeps/hppa/sh/link.h: Renamed to...
	* sysdeps/hppa/sh/linkmap.h: ...this.
	* sysdeps/hppa/x86_64/link.h: Renamed to...
	* sysdeps/hppa/x86_64/linkmap.h: ...this.
2005-01-06 22:40:24 +00:00
Andreas Jaeger
2cc89a4967 2004-12-20 Jakub Jelinek <jakub@redhat.com>,
Jim Gifford  <giffordj@linkline.com>

	[BZ #562]
	* sysdeps/mips/Makefile (librt-sysdep_routines): Add.
	* sysdeps/unix/mips/rt-sysdep.S: New file.
2004-12-20 08:34:03 +00:00
Richard Henderson
0141927118 * 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 10:11:44 +00:00
Andreas Jaeger
8779468479 Adjust for changed result. 2004-12-17 06:49:58 +00:00
Roland McGrath
5fbac7cf7e 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/unix/sysv/linux/mips/bits/socket.h (__cmsg_nxthdr): Use
	__NTH instead of __THROW in the inline definition.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Likewise.
2004-12-15 01:00:56 +00:00
Roland McGrath
2863de95ab 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/mips/bits/dlfcn.h (RTLD_DEEPBIND): New macro.
2004-12-15 01:00:51 +00:00
Roland McGrath
2b35938bce 2004-10-18 Maciej W. Rozycki <macro@mips.com>
* sysdeps/unix/sysv/linux/mips/bits/mman.h
	(PROT_GROWSDOWN, PROT_GROWSUP): New macros.
2004-12-15 01:00:48 +00:00
Roland McGrath
9db87dc9e2 2004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/unix/sysv/linux/arm/sysdep-cancel.h: Update RETINSTR use.
	* sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
2004-12-04 21:20:30 +00:00
Roland McGrath
47f0752a48 2004-11-18 Daniel Jacobowitz <dan@codesourcery.com>
* sysdeps/arm/sysdep.h: Define __USE_BX__ if bx is available.
	Use it instead of __THUMB_INTERWORK__.  Make RETINSTR take
	only a condition and a register.
	* sysdeps/arm/dl-machine.h: Use __USE_BX__ instead of
	__THUMB_INTERWORK__.
	(_dl_start_user): Use BX.
	* sysdeps/arm/strlen.S: Use DO_RET.
	* sysdeps/unix/arm/brk.S, sysdeps/unix/arm/fork.S,
	sysdeps/unix/arm/sysdep.S, sysdeps/unix/arm/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/arm/clone.S,
	sysdeps/unix/sysv/linux/arm/mmap.S,
	sysdeps/unix/sysv/linux/arm/mmap64.S,
	sysdeps/unix/sysv/linux/arm/socket.S,
	sysdeps/unix/sysv/linux/arm/sysdep.h,
	sysdeps/unix/sysv/linux/arm/vfork.S: Update uses of RETINSTR.
2004-12-04 21:20:17 +00:00
Ulrich Drepper
f0b94226b1 Include sgidefs.h only if NO_SGIDEFS_H isn't defined. Don't include
sgidefs.h twice.
2004-11-27 20:01:03 +00:00
Andreas Jaeger
232e0cb8d6 Regenerate. 2004-11-24 04:42:45 +00:00
Andreas Jaeger
ae9e3809f9 Use _ABIO32, _ABIN32 and _ABI64 for ABI selection in generated asm-unistd.h. 2004-11-24 04:38:31 +00:00
Andreas Jaeger
8de3c5f1fe Use _ABIO32, _ABIN32 and _ABI64 for ABI selection in generated syscall-list.h 2004-11-24 04:38:15 +00:00
Andreas Jaeger
9b7b62e64d Prevent <asm/sgidefs.h> from being
included by kernel headers and undo its settings if already
	included.  Define _ABIO32, _ABIN32 and _ABI64 if missing and use
	them to define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32 and
	_MIPS_SIM_ABI64 for compatibility.
2004-11-24 04:37:58 +00:00
Andreas Jaeger
73a227e200 Use _ABIO32, _ABIN32 and _ABI64 for ABI selection throughout. 2004-11-24 04:37:35 +00:00
Andreas Jaeger
b8ddf7a11f Include <sgidefs.h>. Use _ABIO32, _ABIN32 and _ABI64 for ABI selection
throughout.
2004-11-24 04:36:11 +00:00
Andreas Jaeger
56eb7d3add * sysdeps/unix/sysv/linux/mips/bits/siginfo.h (__SI_MAX_SIZE):
Define appropriately based on __WORDSIZE.
	[struct siginfo] (__pad0): Add for explicit padding.

	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Formatting fixes
	throughout.
2004-11-22 12:47:50 +00:00
Ulrich Drepper
8608e6698d (TRAMPOLINE_TEMPLATE): Add unwind annotations. 2004-11-19 00:01:25 +00:00
Ulrich Drepper
6deb629a54 Remove sys/syscall.h, sys/types.h, linux/posix_types.h, sysdep.h and
pthread-functions.h includes.  Include setxid.h.  Use
INLINE_SETXID_SYSCALL macro instead of INLINE_SYSCALL, kill the
HAVE_PTR__NPTL_SETXID guarded snippets.
2004-11-12 01:15:06 +00:00
Richard Henderson
463402af3a * sysdeps/unix/sysv/linux/alpha/register-dump.h (regnames): Align.
(linefeed): Remove.
        (register_dump): Rewrite to generate into a flat buffer instead
        of into iovecs.
2004-11-04 18:39:10 +00:00
Richard Henderson
8cc7e0507d * sysdeps/unix/sysv/linux/alpha/setregid.c: New file.
* sysdeps/unix/sysv/linux/alpha/setresgid.c: New file.
        * sysdeps/unix/sysv/linux/alpha/setresuid.c: New file.
        * sysdeps/unix/sysv/linux/alpha/setreuid.c: New file.
2004-11-01 05:31:54 +00:00
Andreas Schwab
7618b354bf (elf_machine_rela)
(elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
instead of static.
2004-10-30 21:44:13 +00:00
Roland McGrath
fe3dd5144e Nonworking non-GNU OS port code moved to ports repository. 2004-10-26 02:15:24 +00:00
Roland McGrath
fd14fe4536 . 2004-10-26 01:36:11 +00:00
Roland McGrath
1b4558c1c5 2004-10-25 Roland McGrath <roland@frob.com>
* configure.in (ASM_LINE_SEP): Move this setting to ...
	* sysdeps/hppa/configure.in: ... here, new file.
	* sysdeps/hppa/configure: New generated file.
	* configure: Regenerated.
2004-10-26 01:35:53 +00:00
Roland McGrath
99e519ba0a 2004-10-25 Roland McGrath <roland@frob.com>
* sysdeps/cris/configure.in: New file, with test moved out of main
	libc configure.in file.
	* sysdeps/cris/configure: New generated file.
2004-10-26 01:33:30 +00:00
Alexandre Oliva
fe66f7f214 * ChangeLog.am33: Added emacs local variables for mode setting and
default changelog name.
2004-10-25 07:16:32 +00:00
Alexandre Oliva
cbd6a07c56 * sysdeps/unix/sysv/linux/linuxthreads/sysdep-cancel.h: Moved...
* sysdeps/unix/sysv/linux/am33/linuxthreads/sysdep-cancel.h:
... here, where it should have been added in the first place.
2004-10-25 07:11:57 +00:00
Roland McGrath
c706b040a0 add it 2004-10-23 04:33:14 +00:00
Roland McGrath
aa3f0bd8c7 . 2004-10-23 04:07:10 +00:00
Roland McGrath
556e06df46 2004-10-22 Roland McGrath <roland@frob.com>
* Makefile (dist, dist-ports): New target.
	(dist-port-%): New pattern rule.
	* Makeconfig [!subdir] (ports/%): New pattern rule.
2004-10-23 04:07:06 +00:00
Roland McGrath
3696a6e9f1 . 2004-10-23 03:04:42 +00:00
Roland McGrath
1b189b5695 2004-10-22 Roland McGrath <roland@frob.com>
* configure.in: Cope if there are no sysdeps/*/preconfigure files.
	* configure: Regenerated.
2004-10-23 03:04:33 +00:00
Alexandre Oliva
d115c0d8f6 Added Matsushita AM33/2.0 port. 2004-10-23 00:33:35 +00:00
Andreas Jaeger
145f3f8a3c (__SYSCALL_CLOBBERS): Add "memory". 2004-10-18 05:16:08 +00:00
Richard Henderson
885186d085 * sysdeps/unix/sysv/linux/alpha/register-dump.h: New file.
* sysdeps/unix/sysv/linux/alpha/sigcontextinfo.h (SIGCONTEXT): Add
        _code argument, pass sigcontext by pointer.
        (SIGCONTEXT_EXTRA_ARGS): Likewise.
        (GET_PC, GET_FRAME, GET_STACK): Expect ctx as pointer.
2004-10-15 09:34:45 +00:00
Richard Henderson
73e5300008 * sysdeps/alpha/tcb-offsets.sym (thread_offsetof): Redefine to
make gcc4 happy.
2004-10-15 07:07:57 +00:00
Richard Henderson
36f86ab9ac * sysdeps/unix/sysv/linux/adjtime.c (ADJTIME): Use prototype
style definition.
        * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): If
        __ASSUME_TIMEVAL64, define __adjtime directly rather than
        via strong_alias.
2004-10-15 07:06:56 +00:00
Richard Henderson
1795e40c5d * sysdeps/alpha/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative, elf_machine_lazy_rel): Mark auto
        instead of static.
2004-10-15 07:06:11 +00:00
Ulrich Drepper
a270d32ff2 (elf_machine_runtime_link_map): Replace iteration over GL(dl_loaded)
chain with iteration over all namespaces' _ns_loaded chains.
2004-10-14 16:08:53 +00:00
Andreas Schwab
6ffbfb80e1 (WORD_COPY_BWD): Remove use of cast as lvalue. 2004-10-09 21:19:06 +00:00
Andreas Schwab
1bd55d8b3a Remove __THROW from inline definitions. 2004-10-09 21:18:03 +00:00
Roland McGrath
94645659a4 2004-10-04 Roland McGrath <roland@redhat.com>
* include/errno.h [RTLD_PRIVATE_ERRNO] (errno): Rename the real symbol
	to rtld_errno.
	* sysdeps/generic/errno.c [RTLD_PRIVATE_ERRNO] (rtld_errno): Define it,
	and don't define any other errno names.
	* sysdeps/unix/alpha/sysdep.h [RTLD_PRIVATE_ERRNO]: Use rtld_errno in
	place of errno.
	* sysdeps/unix/i386/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.
2004-10-04 20:59:38 +00:00
Ulrich Drepper
3e08e73f58 (__fdimf, __fdim, fdimf, fdim): Handle +inf/+inf. 2004-09-30 06:16:28 +00:00
Ulrich Drepper
6fae1eca92 (pthread_cond_t): Add __extension__ to long long types. 2004-09-28 10:29:32 +00:00
Richard Henderson
def004d709 * sysdeps/alpha/alphaev6/memcpy.S: Mark .prologue.
* sysdeps/unix/alpha/sysdep.h (LEAF, ENTRY): Align entry points
        to 16 byte boundaries.
2004-09-26 17:40:31 +00:00
Ulrich Drepper
d627d8fb46 (inline_syscall[0-6]): Change name argument to numbers from syscall names.
(INLINE_SYSCALL1): Pass __NR_##name to inline_syscall##nr.
(INTERNAL_SYSCALL_NCS): Renamed from...
(INTERNAL_SYSCALL_1): ... this.  Use INTERNAL_SYSCALL_NCS.
2004-09-23 05:15:41 +00:00