Commit Graph

1100 Commits

Author SHA1 Message Date
Roland McGrath 015a5d22ea * allocatestack.c (setxid_signal_thread): Add
INTERNAL_SYSCALL_DECL (err).
2005-10-04 00:40:07 +00:00
Ulrich Drepper b71ce91003 * allocatestack.c (setxid_signal_thread): Need to use
atomic_compare_and_exchange_bool_acq.
2005-10-02 15:40:54 +00:00
Ulrich Drepper dff9a7a163 2005-10-01 Ulrich Drepper <drepper@redhat.com>
Jakub Jelinek  <jakub@redhat.com>

	* descr.h: Define SETXID_BIT and SETXID_BITMASK.  Adjust
	CANCEL_RESTMASK.
	(struct pthread): Move specific_used field to avoid padding.
	Add setxid_futex field.
	* init.c (sighandler_setxid): Reset setxid flag and release the
	setxid futex.
	* allocatestack.c (setxid_signal_thread): New function.  Broken
	out of the bodies of the two loops in __nptl_setxid.  For undetached
	threads check whether they are exiting and if yes, don't send a signal.
	(__nptl_setxid): Simplify loops by using setxid_signal_thread.
	* pthread_create.c (start_thread): For undetached threads, check
	whether setxid bit is set.  If yes, wait until signal has been
	processed.

	* allocatestack.c (STACK_VARIABLES): Initialize them.
	* pthread_create.c (__pthread_create_2_1): Initialize pd.
2005-10-01 17:20:34 +00:00
Ulrich Drepper 560b47093f * pthread_cond_destroy.c (__pthread_cond_destroy): If there are
waiters, awake all waiters on the associated mutex.
2005-09-25 23:58:51 +00:00
Roland McGrath 5eac47606b * elf/dl-tsd.c (__libc_dl_error_tsd): Use attribute_tls_model_ie for
static __thread variable.
	From Alexandre Oliva <aoliva@redhat.com>
2005-09-22 07:29:50 +00:00
Ulrich Drepper a3615024b9 * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h (FUTEX_WAKE_OP,
FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(lll_futex_wake_unlock): Define.
	* sysdeps/unix/sysv/linux/alpha/lowlevellock.h (FUTEX_WAKE_OP,
	FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(lll_futex_wake_unlock): Define.
	* sysdeps/unix/sysv/linux/ia64/lowlevellock.h (FUTEX_WAKE_OP,
	FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(lll_futex_wake_unlock): Define.
	* sysdeps/unix/sysv/linux/s390/lowlevellock.h (FUTEX_WAKE_OP,
	FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(lll_futex_wake_unlock): Define.
	* sysdeps/unix/sysv/linux/sparc/lowlevellock.h (FUTEX_WAKE_OP,
	FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(lll_futex_wake_unlock): Define.
	* sysdeps/pthread/pthread_cond_signal.c (__pthread_cond_signal): Use
	lll_futex_wake_unlock.
	* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S
	(FUTEX_WAKE_OP, FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(__pthread_cond_signal): Use FUTEX_WAKE_OP.
	* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S
	(FUTEX_WAKE_OP, FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define.
	(__pthread_cond_signal): Use FUTEX_WAKE_OP.
2005-09-08 17:41:56 +00:00
Ulrich Drepper b9b8cf0366 (FUTEX_WAKE_OP, FUTEX_OP_CLEAR_WAKE_IF_GT_ONE): Define. (lll_futex_wake_unlock): Define. 2005-09-08 17:39:07 +00:00
Ulrich Drepper bf017034fb . 2005-09-06 01:20:31 +00:00
Ulrich Drepper dbc92dc6cb * configure.in: Compile source test file with -fPIC for -shared.
2005-09-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_mutex_lock_wait):
	Fix typo in register name.
2005-09-06 01:18:13 +00:00
Ulrich Drepper 8558d715d0 * sysdeps/unix/sysv/linux/timer_routines.c (timer_helper_thread):
Use __sigfillset.  Document that sigfillset does the right thing wrt
	to SIGSETXID.
2005-08-24 01:12:37 +00:00
Ulrich Drepper fd4af66481 * sysdeps/unix/sysv/linux/Versions: Export Inotify_* syscalls. 2005-08-23 14:33:08 +00:00
Roland McGrath c06aad090c [BZ #1075, BZ #1112]
bz tags
	[BZ #1075]
	[BZ #1112]
2005-08-19 19:07:25 +00:00
Roland McGrath 44d75caf71 [BZ #1104, BZ #1105, BZ #1106, BZ #1107, BZ #1108, BZ #1109, BZ #1110, BZ #1111]
BZ tags
	[BZ #1106]
	[BZ #1106]
	[BZ #1111]
	[BZ #1109]
	[BZ #1106]
	[BZ #1104]
	[BZ #1106]
	[BZ #1105]
	[BZ #1110]
	[BZ #1110]
	[BZ #1107]
	[BZ #1108]
2005-07-18 04:15:35 +00:00
Ulrich Drepper 3fd1bc6778 * sysdeps/pthread/pthread.h (PTHREAD_MUTEX_INITIALIZER,
PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP,
	PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP,
	PTHREAD_MUTEX_ADAPTIVE_NP, PTHREAD_RWLOCK_INITIALIZER,
	PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP,
	PTHREAD_COND_INITIALIZER): Supply zeros for all fields
	in the structure.
	* Makefile (tests): Add tst-initializers1.
	(CFLAGS-tst-initializers1.c): Set.
	* tst-initializers1.c: New test.

2005-07-11  Jakub Jelinek  <jakub@redhat.com>
2005-07-11 16:41:29 +00:00
Ulrich Drepper 553185e2b0 * sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h (pthread_rwlock_t):
Make sure __flags are located at offset 48 from the start of the
	structure.
2005-07-11 15:49:23 +00:00
Roland McGrath 8df08cb248 * Makeconfig: Comment fix. 2005-07-07 23:20:03 +00:00
Roland McGrath 73d3008bda 2005-07-02 Roland McGrath <roland@redhat.com>
* Makeconfig: Comment fix.
2005-07-07 23:19:57 +00:00
Ulrich Drepper 253eb3a0ac * elf/stackguard-macros.h (STACK_CHK_GUARD): Fix s390/s390x definition.
Reported by Ulrich Weigand <uweigand@de.ibm.com>.

	* elf/stackguard-macros.h (STACK_CHK_GUARD): Add ia64 definition.
2005-07-07 06:10:18 +00:00
Ulrich Drepper bb6e8ca30a * nscd/nscd_stat.c (receive_print_stats): Replace YESSTR/NOSTR
with own translation.

	* sunrpc/xdr.c (xdr_hyper, xdr_u_hyper): When decoding, cast
	t2 to uint32_t instead of ulong.
	* sunrpc/Makefile (tests): Add tst-xdrmem.
	* sunrpc/tst-xdrmem.c: New test.
2005-06-26 18:28:35 +00:00
Ulrich Drepper 35f1e82763 * Versions.def (ld): Add GLIBC_2.4.
* configure.in: Add --enable-stackguard-randomization option.
	(ENABLE_STACKGUARD_RANDOMIZE): New define.
	* config.h.in (ENABLE_STACKGUARD_RANDOMIZE): Add.
	* sysdeps/unix/sysv/linux/dl-osinfo.h: Include stdint.h.
	(_dl_setup_stack_chk_guard): New inline function.
	* sysdeps/generic/dl-osinfo.h: Include stdint.h.
	(_dl_setup_stack_chk_guard): New inline function.
	* elf/rtld.c (__stack_chk_guard): New variable.
	(dl_main): Remove all traces of TLS_INIT_TP_EXPENSIVE.
	Set __stack_chk_guard to _dl_setup_stack_chk_guard (),
	use THREAD_SET_STACK_GUARD if defined.
	* elf/Versions (ld): Export __stack_chk_guard@@GLIBC_2.4.
	* sysdeps/generic/libc-start.c (__stack_chk_guard): New variable.
	(__libc_start_main): Set __stack_chk_guard to
	_dl_setup_stack_chk_guard (), use THREAD_SET_STACK_GUARD if defined.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Remove all
	traces of TLS_INIT_TP_EXPENSIVE.
	* debug/Versions (libc): Export __stack_chk_fail@@GLIBC_2.4.
	* debug/Makefile (routines): Add stack_chk_fail.
	(static-only-routines): Add stack_chk_fail_local.
	* debug/stack_chk_fail_local.c: New file.
	* debug/stack_chk_fail.c: New file.
	* elf/Makefile: Add rules to build and run tst-stackguard1{,-static}
	tests.
	* elf/tst-stackguard1.c: New file.
	* elf/tst-stackguard1-static.c: New file.
	* elf/stackguard-macros.h: New file.
2005-06-26 18:14:26 +00:00
Ulrich Drepper 99c7f8700d * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_runtime_setup):
Handle prelinked libraries and binaries with new style PLT.

2005-06-07  Jakub Jelinek  <jakub@redhat.com>

	* elf/elf.h (R_PPC_REL16, R_PPC_REL16_LO, R_PPC_REL16_HI,
	R_PPC_REL16_HA): Define.

2005-06-14  Alan Modra  <amodra@bigpond.net.au>

	* config.h.in (HAVE_ASM_PPC_REL16): Add.
	* elf/elf.h (DT_PPC_GOT, DT_PPC_NUM): Define.
	* elf/tls-macros.h (PowerPC32): Include config.h.  Add variants of
	TLS_IE, TLS_LD and TLS_GD for new PLT/GOT layout.
	* sysdeps/powerpc/powerpc32/configure.in: New file,
	* sysdeps/powerpc/powerpc32/dl-dtprocnum.h: New file.
	* sysdeps/powerpc/powerpc32/dl-machine.h (DT_PPC): Define.
	(ppc_got): New inline function.
	(elf_machine_dynamic): Use ppc_got.  Add attribute const.
	(elf_machine_load_address): Add attribute const.  Don't use int vars.
	Use bcl rather than bl to save trashing branch target stack.  Use
	elf_machine_dynamic rather than duplicating code here.
	(elf_machine_runtime_setup): New inline function replacing define.
	Handle new PLT.
	(elf_machine_fixup_plt): Handle new PLT.
	(elf_machine_rela): Likewise.
	* sysdeps/powerpc/powerpc32/sysdep.h: Include config.h.
	(CALL_MCOUNT): Don't set up counter vars.
	* sysdeps/powerpc/powerpc32/ppc-mcount.S: Correct comment.
	* sysdeps/powerpc/powerpc32/elf/start.S (start_addressesp): Don't
	define when HAVE_ASM_PPC_REL16.
	(_start): Add HAVE_ASM_PPC_REL16 code.
	* sysdeps/powerpc/powerpc32/dl-start.S (_dl_start_user): Don't bl
	into the GOT when HAVE_ASM_PPC_REL16.
	* sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp): Ditto.
	* sysdeps/powerpc/powerpc32/fpu/s_ceil.S (__ceil): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (__ceilf): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_floor.S (__floor): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_floorf.S (__floorf): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_lround.S (__lround): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_rint.S (__rint): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_rintf.S (__rintf): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Likewise.
	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S (__sigsetjmp):
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S (__brk): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
	(__getcontext): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
	(__setcontext): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
	(__swapcontext): Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (stackblock):
	Comment.
	(__socket): Bomb if NARGS >= 7.  Invoke CGOTSETUP and CGOTRESTORE.

2005-06-17  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/posix/sigignore.c: Include <string.h> to tell the compiler
	to use __GI_memset.
	* sysdeps/posix/signal.c: Likewise.
	* sysdeps/posix/sigset.c: Likewise.
	* sysdeps/posix/sysv_signal.c: Likewise.
	* sysdeps/unix/sysv/linux/sleep.c: Likewise.
	* sysdeps/unix/sysv/linux/sysctl.c: Likewise.
	* sysdeps/unix/sysv/linux/system.c: Likewise.
2005-06-17 23:11:35 +00:00
Roland McGrath 8074c5c597 * sysdeps/mach/i386/syscall.S (syscall): Call END. 2005-05-29 22:12:28 +00:00
Ulrich Drepper c179df4e93 [BZ #961]
2005-05-22  Dmitry V. Levin  <ldv@altlinux.org>
	[BZ #961]
	* io/sys/sendfile.h: Remove __nonnull from sendfile and sendfile64
	declarations.
2005-05-23 17:37:21 +00:00
Ulrich Drepper b0e196a46f * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Don't use
JUMPTARGET.  Instead append @local to __syscall_error.
	* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Delete all occurrences
	of JUMPTARGET.  Instead append @local to labels.
	* sysdeps/powerpc/powerpc32/bsd-setjmp.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
	* sysdeps/powerpc/powerpc32/ppc-mcount.S: Likewise.
	* sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Likewise.

	* sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Use float constants.
	* sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise.  Use one GOT
	slot to access both constants.
	* sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise.
	* sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise.
2005-05-21 19:29:13 +00:00
Ulrich Drepper f7d78e18aa * sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_floorf.S (TWO23.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Comment typo.
	(NEGZERO.0, POINTFIVE.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_rint.S (TWO52.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_rintf.S (TWO23.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Code in .text.
	(TWO52.0, POINTFIVE.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Code in .text.
	(TWO23.0, POINTFIVE.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Code in .text.
	(TWO52.0): Delete.
	* sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Code in .text.
	(TWO23.0): Delete.
	* sysdeps/powerpc/powerpc32/memset.S (memset): Formatting.
2005-05-21 19:01:22 +00:00
Ulrich Drepper 363dd97627 [BZ #955]
2005-05-19  Richard Henderson  <rth@redhat.com>
	* sysdeps/unix/clock_gettime.c (clock_gettime): Fix typo around
	CLOCK_REALTIME.

	* sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_bool_32_acq,
	__arch_compare_and_exchange_bool_64_acq,
	__arch_compare_and_exchange_val_32_acq,
	__arch_compare_and_exchange_val_64_acq, atomic_exchange_and_add):
	Use __sync builtin without _si or _di suffix.

2005-05-19  Jakub Jelinek  <jakub@redhat.com>

	[BZ #955]
	* iconvdata/ibm939.c (BODY): Avoid segfaults with input characters
	<UFFFF> and above.

2005-05-17  Andreas Schwab  <schwab@suse.de>

	* sysdeps/unix/sysv/linux/clock_getcpuclockid.c
	(clock_getcpuclockid): Always return a defined value.
2005-05-21 18:40:10 +00:00
Roland McGrath 5e58ba77c8 pasto in license text 2005-05-05 22:19:51 +00:00
Ulrich Drepper 1ad9da69c6 * sysdeps/i386/add_n.S: Add call frame information.
* sysdeps/i386/addmul_1.S: Likewise.
	* sysdeps/i386/bsd-setjmp.S: Likewise.
	* sysdeps/i386/lshift.S: Likewise.
	* sysdeps/i386/memchr.S: Likewise.
	* sysdeps/i386/memcmp.S: Likewise.
	* sysdeps/i386/mul_1.S: Likewise.
	* sysdeps/i386/rawmemchr.S: Likewise.
	* sysdeps/i386/rshift.S: Likewise.
	* sysdeps/i386/stpncpy.S: Likewise.
	* sysdeps/i386/strchr.S: Likewise.
	* sysdeps/i386/strchrnul.S: Likewise.
	* sysdeps/i386/strcspn.S: Likewise.
	* sysdeps/i386/strpbrk.S: Likewise.
	* sysdeps/i386/strrchr.S: Likewise.
	* sysdeps/i386/strspn.S: Likewise.
	* sysdeps/i386/strtok.S: Likewise.
	* sysdeps/i386/sub_n.S: Likewise.
	* sysdeps/i386/submul_1.S: Likewise.
	* sysdeps/i386/elf/bsd-setjmp.S: Likewise.
	* sysdeps/i386/i486/strcat.S: Likewise.
	* sysdeps/i386/i586/add_n.S: Likewise.
	* sysdeps/i386/i586/addmul_1.S: Likewise.
	* sysdeps/i386/i586/lshift.S: Likewise.
	* sysdeps/i386/i586/memcpy.S: Likewise.
	* sysdeps/i386/i586/memset.S: Likewise.
	* sysdeps/i386/i586/mul_1.S: Likewise.
	* sysdeps/i386/i586/rshift.S: Likewise.
	* sysdeps/i386/i586/strchr.S: Likewise.
	* sysdeps/i386/i586/strcpy.S: Likewise.
	* sysdeps/i386/i586/sub_n.S: Likewise.
	* sysdeps/i386/i586/submul_1.S: Likewise.
	* sysdeps/i386/i686/add_n.S: Likewise.
	* sysdeps/i386/i686/memcmp.S: Likewise.
	* sysdeps/i386/i686/memmove.S: Likewise.
	* sysdeps/i386/i686/mempcpy.S: Likewise.
	* sysdeps/i386/i686/memset.S: Likewise.
	* sysdeps/i386/i686/strtok.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/semtimedop.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.

	* sysdeps/i386/fpu/libm-test-ulps: Adjust for gcc 4.
2005-05-04 06:22:30 +00:00
Ulrich Drepper 5085cd1fa1 * sysdeps/unix/sysv/linux/kernel-features.h: waitid is available
on ppc in 2.6.12.
2005-05-03 22:59:51 +00:00
Ulrich Drepper ad52908115 * sysdeps/pthread/getcpuclockid.c: Include spinlock.h.
Fix a typo in kernel-posix-cpy-timers.h include name, use <> instead
	of "" includes.
	(pthread_getcpuclockid): Fix 2 typos.
2005-04-27 16:56:50 +00:00
Ulrich Drepper 45bc95b581 Use <> instead of "" includes. 2005-04-27 16:51:52 +00:00
Roland McGrath 5e2d8ac83c [BZ #877]
* posix/unistd.h: Remove __nonnull from acct decl.
2005-04-27 09:56:16 +00:00
Ulrich Drepper dea9968599 * tst-cancel17.c (do_test): Add arbitrary factor to make sure
aio_write blocks.
2005-04-27 08:21:37 +00:00
Ulrich Drepper 6bdfb89a67 (do_test): Add arbitrary factor to make sure aio_write blocks. 2005-04-27 08:20:41 +00:00
Roland McGrath 84060bad82 * rt/tst-cpuclock1.c: New file.
* rt/tst-cpuclock2.c: New file.
	* rt/tst-cputimer1.c: New file.
	* rt/tst-cputimer2.c: New file.
	* rt/tst-cputimer3.c: New file.
	* rt/Makefile (tests): Add them.

	* sysdeps/unix/sysv/linux/kernel-posix-cpu-timers.h: New file.
	* sysdeps/unix/sysv/linux/clock_getcpuclockid.c: New file.
	* sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c
	(HAS_CPUCLOCK): New macro.
	(clock_getcpuclockid): Function removed.
	#include the new linux file to define it instead.
	* sysdeps/unix/clock_gettime.c [HP_TIMING_AVAIL] (hp_timing_gettime):
	New function, broken out of ...
	(clock_gettime) [HP_TIMING_AVAIL]: ... here.  Call it.
	(realtime_gettime): New function, broken out of ...
	(clock_gettime) [! HANDLED_REALTIME]: ... here.  Call it.
	(clock_gettime) [SYSDEP_GETTIME_CPU]: Use new macro in default case.
	* sysdeps/unix/sysv/linux/clock_gettime.c (SYSCALL_GETTIME): New macro.
	(SYSDEP_GETTIME_CPUTIME): New macro.
	(SYSDEP_GETTIME): Use both.
	[! __ASSUME_POSIX_TIMERS] (maybe_syscall_gettime): New function, broken
	out of ...
	(SYSDEP_GETTIME): ... here.  Use it.
	[__NR_clock_gettime] (HANDLED_CPUTIME): Define it.
	(SYSDEP_GETTIME_CPUTIME): New macro.  Handle CPU timers by trying
	kernel support and falling back to hp-timing code.
	* sysdeps/posix/clock_getres.c
	[HP_TIMING_AVAIL] (hp_timing_getres): New function, broken out of ...
	(clock_getres) [HP_TIMING_AVAIL]: ... here.  Call it.
	(realtime_getres): New function, broken out of ...
	(clock_getres) [! HANDLED_REALTIME]: ... here.  Call it.
	(clock_getres) [SYSDEP_GETRES_CPU]: Use new macro in default case.
	* sysdeps/unix/sysv/linux/clock_getres.c (SYSCALL_GETRES): New macro.
	(SYSDEP_GETRES_CPUTIME): New macro.
	(SYSDEP_GETRES): Use both.
	[! __ASSUME_POSIX_TIMERS] (maybe_syscall_getres): New function, broken
	out of ...
	(SYSDEP_GETRES): ... here.  Use it.
	[__NR_clock_getres] (HANDLED_CPUTIME): Define it.
	(SYSDEP_GETRES_CPUTIME): New macro.  Handle CPU timers by trying
	kernel support and falling back to hp-timing code.
	* sysdeps/unix/sysv/linux/clock_nanosleep.c: Handle
	CLOCK_PROCESS_CPUTIME_ID and CLOCK_PROCESS_THREAD_ID specially,
	translating to the kernel clockid_t for our own process/thread clock.
2005-04-27 08:03:47 +00:00
Ulrich Drepper 8cf3e47119 Fix typo. 2005-04-26 16:11:10 +00:00
Roland McGrath 4a035b9da9 * old_pthread_cond_init.c: Include <errno.h>.
(__pthread_cond_init_2_0): Fail with EINVAL if COND_ATTR is
	process shared or uses clock other than CLOCK_REALTIME.
	* pthread_cond_init.c (__pthread_cond_init): Remove bogus comment.
2005-04-15 22:19:39 +00:00
Ulrich Drepper edac0e8f44 Add sparc64 TLS and NPTL support.
* elf/tls-macros.h: Add Sparc64 defines.
	* sysdeps/sparc/sparc64/dl-machine.h (sparc64_fixup_plt): Mark as
	always_inline.
	(elf_machine_fixup_plt): Likewise.
	(elf_machine_rela): Handle TLS relocations.
	(elf_machine_type_cleaa): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
	(SYSCALL_ERROR_HANDLER_ENTRY): Use sethi/or for GOT reloc.
	It does not always fit in R_SPARC_GOT13 when building -fPIC.
	Also, add TLS handling.
	* sysdeps/unix/sysv/linux/configure.in (arch_minimum_kernel):
	Increase it to 2.4.21 for sparc64.
	* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S: NULL terminate
	backtrace by zero'ing out %fp.  Store away flags, func_ptr,
	and func_arg in global registers not local registers.
	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S: Handle PTID, TLS,
	and CTID arguments properly.  Add RESET_PID handling.
	* sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Rework so that we
	do not invoke __sigprocmask().  We can always assume rt signals
	are present on sparc64, so just do an inline syscall.

2005-04-13  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc64/dl-machine.h: Add dl_machine_h multiple
	inclusion guard for the first half of the header.
	(elf_machine_type_class, ELF_MACHINE_JMP_SLOT, ELF_MACHINE_NO_REL,
	ELF_MACHINE_PLTREL_OVERLAP, elf_machine_runtime_setup,
	elf_machine_relplt, DL_STACK_END, RTLD_START): Move into the
	#ifndef dl_machine_h guarded part of the header.
2005-04-14 21:46:37 +00:00
Roland McGrath 613d8d5290 * scripts/config.guess: Update from master, timestamp='2005-03-24'.
* scripts/config.sub: Update from master, timestamp='2005-02-10'.
2005-04-05 21:49:28 +00:00
Roland McGrath 328a48c579 2005-04-05 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/pthread.h (__pthread_cleanup_routine): Use
	__inline instead of inline.
	* sysdeps/pthread/bits/libc-lock.h (__libc_cleanup_routine): Likewise.
2005-04-05 21:33:41 +00:00
Ulrich Drepper ee6189855a * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Use functionally
equivalent, but shorter instructions.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/setcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Likewise.
	* sysdeps/unix/x86_64/sysdep.S: Likewise.
	* sysdeps/x86_64/strchr.S: Likewise.
	* sysdeps/x86_64/memset.S: Likewise.
	* sysdeps/x86_64/strcspn.S: Likewise.
	* sysdeps/x86_64/strcmp.S: Likewise.
	* sysdeps/x86_64/elf/start.S: Likewise.
	* sysdeps/x86_64/strspn.S: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.
	* sysdeps/x86_64/bsd-_setjmp.S: Likewise.
	* sysdeps/x86_64/bsd-setjmp.S: Likewise.
	* sysdeps/x86_64/strtok.S: Likewise.
2005-03-31 10:02:53 +00:00
Andreas Jaeger 52febb7316 MIPS NPTL specific pthreadtypes.h 2005-03-29 19:56:26 +00:00
Andreas Jaeger f850220be6 Update.
* sysdeps/mips/atomicity.h: Remove unused file.
	* sysdeps/mips/dl-machine.h (elf_machine_rel): Add TLS relocations.
	* sysdeps/mips/dl-tls.h: New file.
	* sysdeps/mips/libc-tls.c: New file.
	* sysdeps/mips/tls-macros.h: New file.
	* sysdeps/mips/bits/atomic.h: New file.
	* sysdeps/mips/bits/setjmp.h: Protect against multiple inclusion.
	* sysdeps/mips/elf/configure.in: New file.
	* sysdeps/mips/elf/configure: Generated.
	* sysdeps/mips/sys/asm.h: New file.
	* sysdeps/unix/sysv/linux/mips/vfork.S: New file.
	* sysdeps/unix/sysv/linux/mips/clone.S: Add NPTL and five-argument
	clone support.
	* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
	(INTERNAL_SYSCALL_NCS): New.
	(INTERNAL_SYSCALL): Update for non-constant support.
	(internal_syscall0): Likewise.
	(internal_syscall1): Likewise.
	(internal_syscall2): Likewise.
	(internal_syscall3): Likewise.
	(internal_syscall4): Likewise.
	(internal_syscall5): Likewise.
	(internal_syscall6): Likewise.
	(internal_syscall7): Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/siginfo.h (SIGEV_THREAD):
	Update to match the kernel.
	(SIGEV_CALLBACK): Likewise.
	(SIGEV_THREAD_ID): Likewise.

2005-03-28  Daniel Jacobowitz  <dan@codesourcery.com>
2005-03-28 09:26:46 +00:00
Ulrich Drepper 1e6da2b0f2 * pthread_create.c (__pthread_create_2_1): Rename syscall error
variable to scerr.
2005-03-24 06:38:49 +00:00
Roland McGrath 5233d5763b * sysdeps/hppa/configure.in: Remove old Makefile leftovers.
* sysdeps/hppa/configure: Regenerated.
2005-03-13 03:28:56 +00:00
Roland McGrath 3053ff11b6 * alloca_cutoff.c: Correct license text.
* tst-unload.c: Likewise.
	* sysdeps/pthread/allocalim.h: Likewise.
	* sysdeps/pthread/pt-initfini.c: Likewise.
	* sysdeps/pthread/bits/libc-lock.h: Likewise.
	* sysdeps/pthread/bits/sigthread.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
2005-02-26 01:34:15 +00:00
Roland McGrath 28ddcea013 2005-02-25 Roland McGrath <roland@redhat.com>
* alloca_cutoff.c: Correct license text.
	* tst-unload.c: Likewise.
	* sysdeps/pthread/allocalim.h: Likewise.
	* sysdeps/pthread/pt-initfini.c: Likewise.
	* sysdeps/pthread/bits/libc-lock.h: Likewise.
	* sysdeps/pthread/bits/sigthread.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
2005-02-26 01:33:57 +00:00
Roland McGrath 9cfe5381a1 [BZ #284, BZ #721]
* intl/dcigettext.c (_nl_find_msg): Add a cast.
	* nis/nis_clone_dir.c (nis_clone_directory): Use char * for ADDR.
	* nis/nis_clone_obj.c (nis_clone_object): Likewise.
	* nis/nis_clone_res.c (nis_clone_result): Likewise.

	* resolv/nss_dns/dns-network.c (getanswer_r): Use const unsigned char *
	for END_OF_MESSAGE and CP.

	* resolv/res_send.c (send_dg): Add else branch for case impossible
	unless `poll' is buggy.

	* crypt/crypt_util.c (__setkey_r): Add a cast.

	* locale/programs/linereader.c (get_toplvl_escape): Use size_t for
	NBYTES, and unsigned char * for BYTES.

	* locale/programs/charmap.c (charmap_new_char): Use size_t and
	unsighed char * for NBYTES, BYTES parameters.

	* sysdeps/generic/dl-hash.h (_dl_elf_hash): Take const char * argument
	and cast it.
	* sysdeps/i386/i686/dl-hash.h (_dl_elf_hash): Likewise.

	* sunrpc/create_xid.c (_create_xid): Don't use unsigned long for RES.

	* sunrpc/svcauth_des.c (_svcauth_des): Fix cast type.

	* sunrpc/auth_des.c (authdes_create): Don't use u_char for PKEY_DATA.
	(authdes_marshal): Don't use unsigned int for LEN.
	* sunrpc/xdr.c (xdr_hyper): Don't use unsigned long for T2.
	(xdr_u_hyper): Likewise.
	(xdr_u_short): Don't use u_long for L.
	* sunrpc/xdr_intXX_t.c (xdr_int64_t): Don't use uint32_t for T2.

	* inet/rexec.c (rexec_af): Use socklen_t.
	* sunrpc/key_call.c (getkeyserv_handle): Likewise.
	* sunrpc/rtime.c (rtime): Likewise.
	* resolv/res_send.c (send_vc, send_dg): Likewise.
	* nis/nis_callback.c (__nis_create_callback): Likewise.

	* sysdeps/generic/libc-start.c: Use unsigned int for nthreads ptr.

	* sysdeps/posix/getaddrinfo.c (gaih_inet): Fix type of ADDR local.

	* libio/libio.h (_IO_BE): Add parenthesis around EXPR.

	* intl/dcigettext.c (INTVARDEF, INTUSE): Macros removed.
	(_nl_default_dirname): Use libc_hidden_data_def instead of INTVARDEF.
	(libc_freeres_fn, DCIGETTEXT): Don't use INTUSE.
	* intl/bindtextdom.c (INTUSE): Macro removed.
	(_nl_default_dirname): Use libc_hidden_proto.
	(set_binding_values): Don't use INTUSE.
	* include/libintl.h (_libc_intl_domainname_internal): Decl removed.
	(_libc_intl_domainname): Use libc_hidden_proto.
	* posix/regex_internal.h (gettext): Remove INTUSE on it.
	* locale/SYS_libc.c (_libc_intl_domainname): Use libc_hidden_data_def
	rather than INTDEF.
	* include/libintl.h (_): Don't use *_internal name.

	* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Use int32_t,
	not uint32_t.
	* locale/lc-ctype.c (_nl_postload_ctype): Likewise for assignments.

	* iconv/gconv_open.c (__gconv_open): Remove useless cast.

	[BZ #721]
	* sysdeps/i386/dl-machine.h (ELF_MACHINE_NO_RELA): Define this outside
	of [RESOLVE_MAP].
	* sysdeps/sh/dl-machine.h (ELF_MACHINE_NO_REL): Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.
	* sysdeps/powerpc/powerpc64/dl-machine.h
	(elf_machine_rel, elf_machine_rel_relative): Removed.

2005-02-03  Alexandre Oliva  <aoliva@redhat.com>

	[BZ #721]
	* elf/dynamic-link.h: Don't declare nested auto functions that are
	not going to be defined.

2004-07-23  Jakub Jelinek  <jakub@redhat.com>

	[BZ #284]
	* include/features.h (_POSIX_SOURCE, _POSIX_C_SOURCE): Define
	if _XOPEN_SOURCE >= 500 even if __STRICT_ANSI__ is defined.

2005-02-16  Roland McGrath  <roland@redhat.com>
2005-02-17 01:19:55 +00:00
Roland McGrath 7de0012172 * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Define
with auto inline, and attribute always_inline.
	(elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.
	(elf_machine_rel, elf_machine_rel_relative): Likewise.
	* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
	(elf_machine_rela_relative, elf_machine_lazy_rel): Likewise.
	(elf_machine_rel, elf_machine_rel_relative): Likewise.
	(elf_machine_tprel): Likewise.
2005-02-14 22:44:25 +00:00
Ulrich Drepper 4bae262d2a * iconvdata/jis0208.h (struct jisx0208_ucs_idx): Move before use. 2005-02-08 09:04:28 +00:00