2002-12-27  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
	Only define if USE_DL_SYSINFO is defined.

2002-12-22  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
	INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
	Define. Patch by Richard Henderson and Jes Sorensen.
	(PSEUDO): Remove unnecessary ;;.
	* elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
	are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
	if not initializing thread pointer.
	[!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
	* sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
	make it weak also if NONTLS_INIT_TP.
	* sysdeps/unix/common/pause.c: Handle cancellation.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
	(LOADSYSCALL): Remove.
	(SYSCALL_ERROR_HANDLER_ENTRY): Define.
	(SYSCALL_ERROR_HANDLER): Use it.
	(PSEUDO): Don't jump around error handler.
	* sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
	jump around error handler.
	* sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
	to __syscall_error_handler on failure.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
	(LOADSYSCALL): Remove.
	(SYSCALL_ERROR_HANDLER_ENTRY): Define.
	(SYSCALL_ERROR_HANDLER): Use it.
	(PSEUDO): Don't jump around error handler.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
	jump around error handler.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
	to __syscall_error_handler on failure.
This commit is contained in:
Ulrich Drepper 2002-12-28 09:58:41 +00:00
parent 131fd126cd
commit afb2e95400
4 changed files with 86 additions and 2 deletions

View file

@ -1,3 +1,43 @@
2002-12-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
Only define if USE_DL_SYSINFO is defined.
2002-12-22 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
Define. Patch by Richard Henderson and Jes Sorensen.
(PSEUDO): Remove unnecessary ;;.
* elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
are found unless TLS_INIT_TP_EXPENSIVE. Use NONTLS_INIT_TP.
* sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
if not initializing thread pointer.
[!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
* sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
make it weak also if NONTLS_INIT_TP.
* sysdeps/unix/common/pause.c: Handle cancellation.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
(LOADSYSCALL): Remove.
(SYSCALL_ERROR_HANDLER_ENTRY): Define.
(SYSCALL_ERROR_HANDLER): Use it.
(PSEUDO): Don't jump around error handler.
* sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
jump around error handler.
* sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
to __syscall_error_handler on failure.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
(LOADSYSCALL): Remove.
(SYSCALL_ERROR_HANDLER_ENTRY): Define.
(SYSCALL_ERROR_HANDLER): Use it.
(PSEUDO): Don't jump around error handler.
* sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
jump around error handler.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
to __syscall_error_handler on failure.
2002-12-27 Roland McGrath <roland@redhat.com>
* scripts/gen-as-const.awk: New file.

View file

@ -1,3 +1,46 @@
2002-12-27 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/tls.h: Include dl-sysdep.h and stdint.h.
(tcbhead_t): Add sysinfo field.
(SYSINFO_OFFSET, INIT_SYSINFO): Define.
(TLS_INIT_TP): Use INIT_SYSINFO.
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h: New file.
* sysdeps/unix/sysv/linux/i386/sysdep-cancel.h
(MULTIPLE_THREADS_OFFSET): Adjust.
* sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h
(MULTIPLE_THREADS_OFFSET): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h
(MULTIPLE_THREADS_OFFSET): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h
(MULTIPLE_THREADS_OFFSET): Likewise.
* descr.h: Include stdint.h.
(struct _pthread_descr_struct): Add p_header.data.sysinfo field.
2002-12-22 Jakub Jelinek <jakub@redhat.com>
* libc_pthread_init.c: Include stdlib.h.
* sysdeps/i386/tls.h (tcbhead_t): Add multiple_threads member.
(TLS_INIT_TP_EXPENSIVE): Define.
* sysdeps/pthread/bits/libc-lock.h (__libc_maybe_call,
__libc_maybe_call2): In _LIBC check SHARED define.
* sysdeps/ia64/tls.h: New file.
* sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/ia64/Makefile: New file.
* sysdeps/x86_64/tls.h (TLS_INIT_TP_EXPENSIVE): Define.
* sysdeps/sparc/sparc32/tls.h: New file.
* sysdeps/sparc/sparc64/tls.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep-cancel.h: New file.
* Makefile (tests): Add tst-cancel[1-6].
(tests-reverse): Add tst-cancel5.
Link libc.so before libpthread.so for tests-reverse.
* tst-cancel1.c: New file.
* tst-cancel2.c: New file.
* tst-cancel3.c: New file.
* tst-cancel4.c: New file.
* tst-cancel5.c: New file.
* tst-cancel6.c: New file.
2002-12-27 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/m68k/sysdep-cancel.h: New file.

View file

@ -1,7 +1,7 @@
2002-12-28 Ulrich Drepper <drepper@redhat.com>
* descr.h (struct pthread): Move header.data.list to the back of the
struct.
* descr.h: Include <dl-sysdep.h>.
(struct pthread): Move header.data.list to the back of the struct.
* sysdeps/i386/tls.h (tcbhead_t): Move list to the back of the struct.
(MULTIPLE_THREADS_OFFSET): Adjust offset.
(SYSINFO_OFFSEET): Likewise.

View file

@ -29,6 +29,7 @@
#include <list.h>
#include <lowlevellock.h>
#include <pthreaddef.h>
#include <dl-sysdep.h>
#include "../nptl_db/thread_db.h"