Commit Graph

515 Commits

Author SHA1 Message Date
Roland McGrath
a14f26ef69 * include/sys/resource.h: Use libc_hidden_proto for getpriority,
setpriority.
	* sysdeps/unix/sysv/linux/getpriority.c: Add libc_hidden_def.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/mach/hurd/setpriority.c: Likewise.
	* sysdeps/mach/hurd/getpriority.c: Likewise.
	* sysdeps/generic/setpriority.c: Likewise.
	* sysdeps/generic/getpriority.c: Likewise.

	* include/mcheck.h: Use libc_hidden_proto for mcheck_check_all.
	* malloc/mcheck.c: Add libc_hidden_def.

	* include/search.h: Use libc_hidden_proto for hcreate_r, hdestroy_r.
	* misc/hsearch_r.c: Add libc_hidden_def.

	* include/fnmatch.h: Use libc_hidden_proto for fnmatch.
	* posix/fnmatch.c: Add libc_hidden_weak.
2002-08-04 03:50:21 +00:00
Ulrich Drepper
7498f1b0ba Update.
2002-08-03  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/bits/libc-tsd.h: Add _LIBC_TSD_KEY_LOCALE.
2002-08-04 03:18:18 +00:00
Roland McGrath
26e73ab614 * sunrpc/rpc_thread.c: Define it without static. 2002-08-03 05:56:37 +00:00
Ulrich Drepper
3c877a0448 Update.
* pthread.c: Declare _errno, _h_errno, and _res unless we use TLS
	internally.
2002-08-03 05:51:04 +00:00
Ulrich Drepper
1f3f143e62 Update.
2002-08-02  Ulrich Drepper  <drepper@redhat.com>

	* cancel.c (__pthread_perform_cleanup) [USE_TLS && HAVE___THREAD]:
	Don't use p_libc_specific element in thread descriptor.
2002-08-03 03:53:28 +00:00
Roland McGrath
fc10bc8d32 * resolv/resolv.h (_res): Define macro unconditionally.
[! _LIBC_REENTRANT] (_res): Move this conditional decl to ...
	* include/resolv.h: ... here.
	[USE_TLS && HAVE___THREAD] (_res): #undef it and declare
	as a __thread variable.
	* resolv/res_libc.c [USE_TLS && HAVE___THREAD] (_res): Define it as
	a __thread variable instead of a global.
	* resolv/res_data.c [_LIBC]: Don't #undef _res.

	* include/errno.h: Include <tls.h> to make sure USE_TLS defined by the
	time we test it.

	* intl/loadmsgcat.c [__GNUC__]: #undef alloca before defining it.

	* malloc/malloc.c [_LIBC]: Include <string.h> instead of using local
	decls of memset and memcpy.

	* sysdeps/generic/sysdep.h (END): Conditionalize on [__ASSEMBLER__].
	* sysdeps/unix/sysv/linux/i386/sysdep.h (L): Likewise.

	* elf/dl-load.c (_dl_map_object_from_fd): Comment fix.

	* sysdeps/generic/bits/libc-tsd.h [USE_TLS && HAVE___THREAD]
	(__libc_tsd_define): Define using __thread.

	* sunrpc/rpc_thread.c: Use __libc_tsd_define.
	(__rpc_thread_variables): Use __libc_tsd_get.
	(__rpc_thread_destroy): Use __libc_tsd_get instead of calling
	__rpc_thread_variables, which might allocate what we're about to free.

	* inet/herrno.c [USE_TLS && HAVE___THREAD] (h_errno): Define as a
	thread-local variable.
	* resolv/netdb.h (h_errno): Define macro unconditionally.
	[_LIBC] (__set_h_errno): Macro moved to ...
	* include/netdb.h: ... here.
	[USE_TLS && HAVE___THREAD] (h_errno): Declare __thread variable.
	[USE_TLS && HAVE___THREAD] (__set_h_errno): Define using that.
	[! _LIBC_REENTRANT]: #undef h_errno here.

	* include/errno.h: Protect from multiple inclusion.

	* misc/sys/select.h (__NFDBITS, __FDELT, __FDMASK): #undef these
	before defining them, since Linux's <linux/posix_types.h> might have
	defined them.

2002-08-01  Roland McGrath  <roland@redhat.com>
2002-07-31  Roland McGrath  <roland@redhat.com>
2002-07-31  Roland McGrath  <roland@redhat.com>
2002-08-02 03:37:41 +00:00
Roland McGrath
c2afe83352 * sysdeps/pthread/bits/libc-tsd.h: Include <tls.h>.
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
	which does the right thing when __thread support is available.
	* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
	Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
	`p_h_errno', `p_resp', and `p_res' members.
	* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_errnop' and `p_h_errnop' members.
	(__pthread_reset_main_thread): Likewise.
	(__pthread_initialize_manager): Likewise.
	* manager.c (__pthread_manager, pthread_handle_create): Likewise.
	* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
	Don't initialize `p_resp' member.
	(__pthread_reset_main_thread): Likewise.
	* manager.c (pthread_handle_create): Likewise.
	* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
	Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
	* errno.c [USE_TLS && HAVE___THREAD]
	(__h_errno_location, __res_state): Don't define these at all.

	* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
	(INSTALL_NEW_DTV, GET_DTV): Likewise.
	* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.

	* weaks.c: Don't include <errno.h> here.

2002-08-01  Roland McGrath  <roland@redhat.com>

	* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
	TLS_INIT_TP.
	(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
	(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
	(TLS_INIT_TP): Use that.
2002-08-02 03:32:24 +00:00
Ulrich Drepper
06c2c536fc Update.
2002-08-02  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (public_cALLOc): Check for overflow on
	multiplication.
	* sunrpc/xdr_array.c (xdr_array): Likewise.
	* sunrpc/rpc/types.h (mem_free): Add comment.
	Patch by Solar Designer <solar@openwall.com>.

2002-08-02  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/kernel-features.h
	(__ASSUME_SET_THREAD_AREA_SYSCALL): Define.

	* libio/stdio.h (sys_errlist, sys_nerr, _sys_errlist, _sys_nerr):
	* libio/Makefile (headers): Add bits/sys_errlist.h to the list.
	* sysdeps/generic/bits/sys_errlist.h: New file.  This does *not*
	declare sys_errlist and sys_nerr.
	* sysdeps/unix/sysv/linux/bits/sys_errlist.h: New file.  Does
2002-08-02 01:43:32 +00:00
Ulrich Drepper
78ce5a3bbb Update.
2002-07-24  Ulrich Drepper  <drepper@redhat.com>

	* libio/fileops.c (_IO_file_seekoff_mmap): Do use fp->_offset to
	compute current position.

	* stdio-common/tst-fseek.c (main): Improve error messages.

	* libio/tst-freopen.c (main): Remove unused variable.

	* libio/fileops.c (_IO_file_seekoff_mmap): Set fp->_offset after
	succesful seek call.  Simply error checking.

2002-07-25  Jakub Jelinek  <jakub@redhat.com>

	* config.h.in: Use __ASSEMBLER__ test macro not ASSEMBLER.
	* sysdeps/ia64/fpu/libm_support.h: Likewise.
2002-07-25 01:30:57 +00:00
Ulrich Drepper
8a30f00fe8 Update.
2002-07-23  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/libc-tls.c: New file.
	* csu/Makefile (routines): Add libc-tls.
	(static-only-routines): Add libc-tls.
	* elf/dl-support.c (_dl_phdr): New variable.
	(_dl_phnum): New variable.
	(_dl_aux_init): Initialize _dl_phdr and _dl_phnum from aux vector.
	* sysdeps/generic/libc-start.c (__libc_start_main): Reorganize code
	for !SHARED.  First look through auxiliary vector.  If TLS always
	call __pthread_initialize_minimal.

	* sysdeps/generic/dl-tls.c (_dl_allocate_tls): Make sure size argument
	in mmap call is never zero.
2002-07-23 23:12:01 +00:00
Ulrich Drepper
67ee6db0fd Update.
2002-07-22  Ulrich Drepper  <drepper@redhat.com>

	* Makefile: Actually creat tst-signal.out file when running the test.
2002-07-23 00:37:27 +00:00
Ulrich Drepper
739d440d2a Update.
2002-07-19  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add test for __thread support in compiler.
	* config.h.in: Add HAVE___THREAD.
	* Makefile (headers): Remove errno.h, sys/errno.h, and bits/errno.h.
	* include/sys/errno.h: Moved to...
	* stdlib/sys/errno.h: ...here.  New file.
	* stdlib/errno.h: New file.  Moved from...
	* include/errno.h: ...here.  Changed into an internal header defining
	libc-local things like __set_errno.
	* stdlib/Makefile (headers): Add errno.h, sys/errno.h, and
	bits/errno.h.
	* elf/dl-minimal.c: Include <tls.h>.  Define errno as thread-local
	variable if USE_TLS && HAVE___THREAD.  Don't define __errno_location
	either.
	* elf/rtld.c (_dl_start): Add code to initialize TLS for ld.so
	from...
	(_dl_start_final): ...here.  Add code to initialize tls elements from
	bootstrap_map.
	* sysdeps/generic/errno-loc.c: Define errno as thread-local variable
	if USE_TLS && HAVE___THREAD.
	* sysdeps/generic/bits/errno.h: Remove __set_errno definition.
	* sysdeps/mach/hurd/bits/errno.h: Likewise.
	* sysdeps/standalone/arm/bits/errno.h: Likewise.
	* sysdeps/standalone/bits/errno.h: Likewise.
	* sysdeps/unix/bsd/bsd4.4/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/aix/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/hpux/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/hppa/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/errno.h: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/bits/errno.h: Likewise.
	* sysdeps/i386/dl-machine.c (elf_machine_rel) [RTLD_BOOTSTRAP]: Don't
	use GL(dl_rtld_map), use map parameter.
	* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/unix/sysv/linux/i386/sysdep.S: Define errno in .tbss if
	USE_TLS && HAVE___THREAD.
	* sysdeps/unix/sysv/linux/i386/sysdep.h: Unify SETUP_PIC_REG
	definitions.  If USE_TLS && HAVE___THREAD store errooor value using
	TLS code sequence.
	* sysdeps/unix/sysv/linux/i386/i686/sysdep.h: Likewise.

	* sysdeps/unix/sysv/linux/getcwd.c: No real need to restore errno.
	* sysdeps/unix/sysv/linux/grantpt.c: Likewise.
	* sysdeps/unix/sysv/linux/internal_statvfs.c: Likewise.
	* sysdeps/unix/sysv/linux/msgctl.c: Likewise.
	* sysdeps/unix/sysv/linux/readv.c: Likewise.
	* sysdeps/unix/sysv/linux/writev.c: Likewise.
2002-07-20 01:14:41 +00:00
Ulrich Drepper
a99bfa85d8 Update.
2002-07-02  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/atomicity.h: Don't include <sgidefs.h>.  Always
	use ll/sc.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.

	* sysdeps/unix/sysv/linux/configure.in: Set arch_minimum_kernel
	to 2.4.0 for mips.

	TLS fail if USE_TLS is not defined.
2002-07-16 01:02:04 +00:00
Ulrich Drepper
2acfe5d64c Update.
2002-07-14  Ulrich Drepper  <drepper@redhat.com>

	* manager.c (pthread_handle_create): Initialize self-reference in
	descriptor.
2002-07-15 02:05:23 +00:00
Ulrich Drepper
b664d723de Update.
* malloc/hooks.c (realloc_check): If mremap succeeds actually use
	the result.

	* sysdeps/i386/i486/bits/string.h: Add early clobber for "a"
	output parameter.  Reported by Denis Zaitsev <zzz@cd-club.ru>.

	* Versions.def (libthread_db): Add GLIBC_2.3.

2002-07-09  Jakub Jelinek  <jakub@redhat.com>

	* libio/freopen.c (freopen): Reset jump tables, use mmap stdio for the
	new stream if possible.
	* libio/freopen64.c (freopen64): Likewise.
	* libio/Makefile (tests): Add tst-freopen.
	* libio/tst-freopen.c: New file.

2002-07-03  Jakub Jelinek  <jakub@redhat.com>

	* libio/stdio.h (obstack_printf): Add format attribute.
	(obstack_vprintf): Likewise.

2002-07-04  Jakub Jelinek  <jakub@redhat.com>

	* posix/regex_internal.h (re_token_t): Shrink the structure to 8
	resp. 16 bytes on 32-bit resp. 64-bit platforms.
	(re_charset_t, re_string_t): Reorder structure members for 64-bit
	architectures.

2002-07-04  Jakub Jelinek  <jakub@redhat.com>

	* posix/regcomp.c (re_compile_internal): Move clearing of dfa...
	(init_dfa): ...here.

2002-07-05  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regcomp.c (parse_sub_exp): Add nodes OP_OPEN_SUBEXP and
	OP_CLOSE_SUBEXP at both ends of sub expressions instead of SUBEXP
	nodes in parse trees.
	(calc_first): Fix the Definition of `firsts' of OP_OPEN_SUBEXP
	and OP_CLOSE_SUBEXP, and remove the definition of SUBEXP.
	(calc_epsdest): Treat OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP as the
	nodes which can epsilon transit.
	* posix/regex_internal.h: Add OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP
	to IS_EPSILON_NODE macro.
	* posix/regexec.c (update_regs): New function to update registers
	by refering OP_OPEN_SUBEXP and OP_CLOSE_SUBEXP nodes.
	(proceed_next_node): Use the entities of the nodes to determine
	whether the node can transit to.
	(set_regs): Use update_regs function to update registers.

2002-07-03  Jakub Jelinek  <jakub@redhat.com>

	* posix/bug-regex4.c (main): Remove duplicate setlocale.
	* posix/bug-regex6.c: New file.
	* posix/Makefile (tests): Add bug-regex6.
	(bug-regex6-ENV): Set LOCPATH.

2002-07-10  Ulrich Drepper  <drepper@redhat.com>
2002-07-11 02:59:49 +00:00
Ulrich Drepper
f4741da2e7 Update.
* bug-sleep.c: New file.
	* Makefile (tests): Add bug-sleep.
2002-07-10 20:50:46 +00:00
Ulrich Drepper
d880edc43c Update.
2002-07-10  Ulrich Drepper  <drepper@redhat.com>

	* wrapsyscall.c: Add __nanosleep alias.
	* Versions (GLIBC_2.2.6): Add __nanosleep.
2002-07-10 20:43:48 +00:00
Ulrich Drepper
95fdc6a0f6 Update.
2002-06-19  Steven Munroe  <sjmunroe@vnet.ibm.com>

	* Examples/ex9.c (main):  Use list of children and join them.
	(thread): Do not call exit.
2002-06-30 04:04:20 +00:00
Ulrich Drepper
9b17bc94bc Update.
2002-06-20  Ulrich Drepper  <drepper@redhat.com>

	* spinlock.c (wait_node_alloc): We cannot use compare-and-exchange.
	Unconditionally use the code using spinlock.  Use __pthread_release
	to free a spinlock.
	(wait_node_free): Likewise.
	(__pthread_acquire, __pthread_release): Unconditionally define.
2002-06-21 05:32:43 +00:00
Andreas Jaeger
a6cd9bf987 Update.
2002-06-07  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Fix typo.
2002-06-07 20:12:11 +00:00
Ulrich Drepper
c0a0f9a32c Update.
2002-05-21  Isamu Hasegawa  <isamu@yamato.ibm.com>

	* posix/regex.c: Define `inline' as a macro into nothing for the
	compilers which lack the keyword.
	* posix/regex.h: (RE_SYNTAX_GNU_AWK): Remove RE_CONTEXT_INVALID_OPS
	for the compatibility of gawk.
	* posix/regcomp.c: Add fake implementation of isblank() for the
	environments which lack the function.
	Don't use free_charset() in case of non-i18n envs.
	(build_range_exp): Don't use i18n related code in case of non-i18n
	envs.
	(build_collating_symbol): Likewise.
	(build_equiv_class): Likewise.
	(build_charclass): Likewise.
	(re_compile_fastmap_iter): Likewise.
	(parse_bracket_exp): Likewise.
	(build_word_op): Likewise.
	(regfree): Don't use free_charset() in case of non-i18n envs.
	* posix/regex_internal.h: Remove COMPLEX_BRACKET from
	re_token_type_t in case of non-i18n envs.
	Don't define re_charset_t in case of non-i18n envs.
	Change the type of wcs of re_string_t from wchar_t to wint_t,
	since we store also WEOF.
	* posix/regex_internal.c: (re_string_realloc_buffers): Change
	the type of wcs of re_string_t from wchar_t to wint_t.
	(re_string_reconstruct): Likewise.
	(create_ci_newstate): Don't use i18n related code in case of
	non-i18n envs.
	(create_cd_newstate): Likewise.

2002-05-24  Ulrich Drepper  <drepper@redhat.com>

	* iconv/loop.c: Fix typo.

2002-05-23  Jakub Jelinek  <jakub@redhat.com>

	* inet/ether_line.c (ether_line): Fix a typo causing only
	lower 4 bits of each ethernet address byte being assigned.
	Don't modify what line points to.
	* inet/tst-ether_aton.c (main): Add ether_line tests.

2002-05-23  Marcus Brinkmann  <marcus@gnu.org>

	* manual/filesys.texi: Don't make readlink example leak memory
	when readlink fails.
2002-05-24 08:49:00 +00:00
Ulrich Drepper
12b7f470d2 Update.
2002-05-21  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/pthread.h (pthread_create): Rename first
	parameter.
	(pthread_cancel): Likewise.
	* internals.h (__pthread_create_2_1): Likewise.
	* sysdeps/unix/sysv/linux/bits/sigthread.h (pthread_kill): Likewise.
2002-05-21 17:58:38 +00:00
Ulrich Drepper
4c393b689f Update.
2002-05-16  Bruno Haible  <bruno@clisp.org>

	* MakeTAGS (libc.pot): Don't sort the output.
	* po/header.pot: Update to match xgettext 0.11 output.

2002-05-16  Bruno Haible  <bruno@clisp.org>

	* MakeTAGS (subdirs): Remove duplicates.
2002-05-20 20:11:09 +00:00
Ulrich Drepper
38a7d8baf4 Update.
2002-05-02  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ia64/Makefile: Add ia64libgcc in csu subdir.
	* sysdeps/ia64/Versions (__divtf3, __divdf3, __divsf3, __divdi3,
	__moddi3, __udivdi3, __umoddi3, __multi3): Export at GLIBC_2.0.
	* sysdeps/ia64/ia64libgcc.S: New file.

2002-05-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (oom): Implement using _dl_fatal_printf.

	* malloc/memusage.c: Distinguish anonymous mmap.
2002-05-03 07:39:22 +00:00
Ulrich Drepper
531bafd8a6 Update.
2002-04-30  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/locarchive.c (create_archive): Add archivefname
	argument, create fname from it.
	(enlarge_archive): Honour output_prefix.
	(open_archive): Likewise.

2002-04-30  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/locarchive.c (add_locales_to_archive): Don't nest
	too many stpcpy macros.

2002-04-26  Bruno Haible  <bruno@clisp.org>

	* locale/programs/ld-collate.c (collate_read): Cast first argument
	for "%.*s" to int.

2002-04-26  Bruno Haible  <bruno@clisp.org>

	* include/libintl.h (__ngettext, __dngettext, __dcngettext,
	__dcngettext_internal): New declarations.
	(__gettext, __dgettext, __dcgettext, __dcgettext_internal): Add
	attribute declarations.
2002-05-01 17:09:58 +00:00
Ulrich Drepper
14b2ede5b2 Update.
2002-04-08  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/timer_getoverr.c: Return real overrun.
	* sysdeps/pthread/posix-timer.h (struct timer_node): Add overrun_count.
	* sysdeps/pthread/timer_routines.c (thread_func): Schedule next timeout
	based on previous one and not on current time.  Count overruns.
	Patch by Eric F. Sorton <eric@cctcorp.com>.

	* sysdeps/unix/sysv/linux/bits/local_lim.h: Add DELAYTIMER_MAX.

	(FLOATING_STACKS, ARCH_STACK_MAX_SIZE): Defined.
2002-04-09 02:10:21 +00:00
Ulrich Drepper
776cc5d31c Update.
2002-04-08  Ulrich Drepper  <drepper@redhat.com>

	* Makerules: Use cppflags-iterator.mk to add defines for all test
	source files.
2002-04-08 21:43:57 +00:00
Ulrich Drepper
3632a26020 Update.
2002-04-08  kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* elf/elf.h: Define R_SH_TLS_xxx macros.
	* elf/rtld.c: Remove an extra parenthesis.
	* elf/tls-macros.h: Define SH version TLS_LE, TLS_IE, TLS_LD and
	TLS_GD macros.
	* sysdeps/generic/dl-tls.c: Add a missing semi-colon.
	* sysdeps/sh/dl-lookupcfg.h: New file.
	* sysdeps/sh/dl-tls.h: New file.
	* sysdeps/sh/dl-machine.h (elf_machine_type_class): Set
	ELF_RTYPE_CLASS_PLT also for the three TLS relocations.
	(elf_machine_rela): Handle R_SH_TLS_DTPMOD32, R_SH_TLS_DTPOFF32 and
	R_SH_TLS_TPOFF32 relocations.
2002-04-08 21:05:48 +00:00
Ulrich Drepper
3fc2f6c8cb Update.
2002-04-05  Ulrich Drepper  <drepper@redhat.com>

	* timezone/zic.c: Update from tzcode2002c.
	* timezone/asia: Update from tzdata2002c.
	* timezone/backward: Likewise.
	* timezone/europe: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/southamerica: Likewise.
	* timezone/zone.tab: Likewise.
2002-04-06 04:05:41 +00:00
Ulrich Drepper
6736e93bab Update.
2002-03-23  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/brk.c (__curbrk): Declare.
	* sysdeps/generic/dl-brk.c: Add attribute_hidden to __curbrk.
	* sysdeps/generic/dl-sbrk.c: Likewise.
	* sysdeps/unix/arm/dl-brk.S: New file.
	* sysdeps/unix/bsd/hp/m68k/dl-brk.S: New file.
	* sysdeps/unix/bsd/osf/alpha/dl-brk.S: New file.
	* sysdeps/unix/bsd/sun/m68k/dl-brk.S: New file.
	* sysdeps/unix/bsd/vax/dl-brk.S: New file.
	* sysdeps/unix/i386/dl-brk.S: New file.
	* sysdeps/unix/mips/dl-brk.S: New file.
	* sysdeps/unix/sparc/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/alpha/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/ia64/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/powerpc/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-brk.S: New file.
	* sysdeps/unix/sysv/linux/i386/dl-brk.c: Remove.
	* sysdeps/unix/sysv/linux/i386/dl-sbrk.c: Remove.

2002-04-03  Andreas Schwab  <schwab@suse.de>

	* Makefile (headers): Add gnu/lib-names.h here instead of
	install-others.
	($(inst_includedir)/gnu/lib-names.h): Remove explicit
	installation rule.
	(install-headers): Add dependency on install-headers-nosubdir.
	* stdio-common/Makefile (headers): Add bits/stdio_lim.h here
	instead of install-others.
	($(inst_includedir)/bits/stdio_lim.h): Remove explicit
	installation rule.

2002-04-05  Ulrich Drepper  <drepper@redhat.com>

	* manual/users.tex (Enable/Disable Setuid): Fix typo in example.
	Reported by Sam Roberts <sroberts@uniserve.com>.

2002-04-03  Jakub Jelinek  <jakub@redhat.com>

	* elf/do-rel.h (elf_dynamic_do_rel): Skip relative relocs if
	l_addr == 0 and ELF_MACHINE_REL_RELATIVE.
	* sysdeps/alpha/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.
	* sysdeps/ia64/dl-machine.h (ELF_MACHINE_REL_RELATIVE): Define.

2002-04-03  David Mosberger  <davidm@hpl.hp.com>

	* sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Add unwind info.
	(RTLD_START): Ditto.
	(__ia64_init_bootstrap_fdesc_table): Insert stop bit to avoid RAW
	dependency violation.
2002-04-06 01:45:15 +00:00
Ulrich Drepper
62097690c6 Update.
2002-04-02  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/ia64/pt-machine.h (MEMORY_BARRIER): Define.
2002-04-02 22:29:51 +00:00
Ulrich Drepper
fbaee91d72 Update.
2002-03-22  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/mips/pt-machine.h (MEMORY_BARRIER): Remove.
2002-03-22 08:40:35 +00:00
Ulrich Drepper
32fe4a9320 Update.
2002-03-22  Ulrich Drepper  <drepper@redhat.com>

	* internals.h (MEMORY_BARRIER): Define as asm with memory as clobber.
2002-03-22 08:29:10 +00:00
Andreas Jaeger
f68137c94b * sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap
prototpyes. 
* sysdeps/alpha/pt-machine.h: Likewise. 
* sysdeps/arm/pt-machine.h: Likewise. 
* sysdeps/cris/pt-machine.h: Likewise. 
* sysdeps/hppa/pt-machine.h: Likewise. 
* sysdeps/i386/i686/pt-machine.h: Likewise. 
* sysdeps/ia64/pt-machine.h: Likewise. 
* sysdeps/m68k/pt-machine.h: Likewise. 
* sysdeps/mips/pt-machine.h: Likewise. 
* sysdeps/powerpc/pt-machine.h: Likewise. 
* sysdeps/s390/s390-32/pt-machine.h: Likewise. 
* sysdeps/s390/s390-64/pt-machine.h: Likewise. 
* sysdeps/sh/pt-machine.h: Likewise. 
* sysdeps/sparc/sparc32/pt-machine.h: Likewise. 
* sysdeps/sparc/sparc64/pt-machine.h: Likewise. 
* sysdeps/x86_64/pt-machine.h: Likewise.
	* internals.h: Move testandset and __compare_and_swap prototypes
	to pt-machine.h.
2002-03-17  Andreas Jaeger  <aj@suse.de>

	* sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap
	prototpyes.
	* sysdeps/alpha/pt-machine.h: Likewise.
	* sysdeps/arm/pt-machine.h: Likewise.
	* sysdeps/cris/pt-machine.h: Likewise.
	* sysdeps/hppa/pt-machine.h: Likewise.
	* sysdeps/i386/i686/pt-machine.h: Likewise.
	* sysdeps/ia64/pt-machine.h: Likewise.
	* sysdeps/m68k/pt-machine.h: Likewise.
	* sysdeps/mips/pt-machine.h: Likewise.
	* sysdeps/powerpc/pt-machine.h: Likewise.
	* sysdeps/s390/s390-32/pt-machine.h: Likewise.
	* sysdeps/s390/s390-64/pt-machine.h: Likewise.
	* sysdeps/sh/pt-machine.h: Likewise.
	* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
	* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
	* sysdeps/x86_64/pt-machine.h: Likewise.

	* internals.h: Move testandset and __compare_and_swap prototypes
	to pt-machine.h.
2002-03-17 12:10:08 +00:00
Andreas Jaeger
1bd8ff7b32 * errno.c: Include resolv.h to avoid warning.
2002-03-03  Andreas Jaeger  <aj@suse.de>

	* errno.c: Include resolv.h to avoid warning.
2002-03-03 19:38:20 +00:00
Ulrich Drepper
b863ccd7c0 Update.
2002-02-27  Ulrich Drepper  <drepper@redhat.com>

	* pthread.c [USE_TLS] (thread_self_stack): Correct check for upper
	stack limit.
2002-02-27 09:29:04 +00:00
Ulrich Drepper
b6a0a99693 Update.
* attr.c (pthread_getattr_np): Don't take thread descriptor size
	into account if USE_TLS.
	* manager.c (pthread_handle_create): Free TLS data structures if call
	failed.  Pass correct stack to clone if USE_TLS.
	* sysdeps/i386/pt-machine.h: Handle multiple inclusion.
	* sysdeps/i386/i686/pt-machine.h: Likewise.
	* sysdeps/i386/tls.h: Unconditionally include <pt-machine.h>.
2002-02-24 04:57:56 +00:00
Ulrich Drepper
557fab43bd Update.
2002-02-23  Ulrich Drepper  <drepper@redhat.com>

	* csu/set-init.c: Moved to...
	* sysdeps/mach/hurd/set-init.c: ...here.  New file.
	* csu/Makefile: Don't compile set-init.
	* sysdeps/mach/hurd/Makefile: Compile set-init for subdir csu.
	* sysdeps/mach/hurd/i386/init-first.c: Call __init_misc in addition
	to __libc_init.
	* sysdeps/mach/hurd/mips/init-first.c: Likewise.
	* sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
	* sysdeps/unix/sysv/linux/init-first.c: Call __init_misc instead of
	__libc_init.
	* misc/init-misc.c: Always export __init_misc.  Don't define hooks for
	__libc_subinit.
2002-02-23 08:47:54 +00:00
Ulrich Drepper
232bd771a3 Update.
2002-02-17  Andreas Schwab  <schwab@suse.de>

	* signals.c (sigwait): Check for old sighandler being SIG_ERR,
	not NULL.
2002-02-19 07:13:04 +00:00
Ulrich Drepper
aed283dd45 Update.
2002-02-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (TLS_DTV_UNALLOCATED): Renamed from
	TLS_DTV_UNALLOCATE.
	(oom): New function.
	(_dl_next_tls_modid): Rewrite to handle dl_tls_dtv_slotinfo_list.
	(_dl_determine_tlsoffset): Likewise.
	(_dl_allocate_tls): Likewise.
	(__TLS_GET_ADDR): Define if not already defined.
	(_dl_tls_symaddr): New function.
	(allocate_and_init): New function.
	(__tls_get_addr): Actually implement handling of generation counter
	and deferred allocation.
	* sysdeps/generic/ldsodefs.h (_rtld_global): Remove _dl_initimage_list,
	add _dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	Define TLS_SLOTINFO_SURPLUS and DTV_SURPLUS.
	Declare _dl_tls_symaddr.
	* sysdeps/i386/dl-tls.h: Disable __tls_get_addr handling unless
	SHARED.
	* include/link.h (struct link_map):  Remove l_tls_nextimage and
	l_tls_previmage.
	* elf/dl-sym.c (_dl_sym): After successful lookup call _dl_tls_symaddr
	instead of DL_SYMBOL_ADDRESS for STT_TLS symbols.
	(_dl_vsym): Likewise.
	* elf/rtld.c (_dl_start_final): Adjust initdtv initialization for new
	layout.
	(dl_main): Allow PT_TLS be present for empty segment.  Remove
	nextimage list handling.  Instead add all modules using TLS to
	dl_tls_dtv_slotinfo_list.
	* elf/dl-open.c (dl_open_worker): After successfully loading all
	objects add those with TLS to the dl_tls_dtv_slotinfo_list list.
	* elf/dl-load.c (_dl_map_object_from_fd): If PT_TLS entry is for an
	empty segment don't do anything.  Remove handling of initimage list.
	* elf/Versions [ld] (GLIBC_2.0): Add __libc_memalign.
	(GLIBC_PRIVATE): Add _dl_tls_symaddr.
	* elf/dl-minimal.c: Define __libc_memalign.
	* elf/dl-support.c: Remove _dl_initimage_list.  Add
	_dl_tls_dtv_slotinfo_list, _dl_tls_static_nelem, and
	_dl_tls_generation.
	* include/stdlib.h: Declare __libc_memalign.

	* elf/Makefile: Add rules to build and run tst-tls4 and tst-tls5.
	* elf/tst-tls4.c: New file.
	* elf/tst-tls5.c: New file.
	* elf/tst-tlsmod2.c: New file.

	* elf/tls-macros.h: asms using ___tls_get_addr destroy %ecx and %edx.

	* elf/tst-tlsmod1.c: Don't define variables unles USE_TLS.

	* elf/tst-tls1.c: Use test-skeleton.c.
	* elf/tst-tls2.c: Likewise.
	* elf/tst-tls3.c: Likewise.

	* elf/dl-conflict.c (RESOLVE_MAP): Return NULL not 0.

	* sysdeps/mips/machine-gmon.h: Update MCOUNT for current GCC behavior.
2002-02-13 08:03:56 +00:00
Ulrich Drepper
974ac3d678 Update.
2002-02-08  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/tls.h (TLS_INIT_TP): Also initialize %gs.
2002-02-09 06:13:03 +00:00
Ulrich Drepper
2a535bf6a0 Update.
2002-02-08  Richard Henderson  <rth@twiddle.net>
	* sysdeps/alpha/elf/initfini.c: Use \n\ for multiline string.
2002-02-09 01:59:10 +00:00
Ulrich Drepper
67eb7235ce Update.
2002-02-09  Richard Henderson  <rth@twiddle.net>

	* sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
	_dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.

2002-02-09  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.

	* po/ca.po: Update from translation team.
	* po/sk.po: Likewise.
2002-02-09 01:54:57 +00:00
Andreas Jaeger
1a70fdb307 * sysdeps/mips/pspinlock.c (__pthread_spin_lock): Silence the
gcc warning. 
(__pthread_spin_lock): Remove ".set noreorder". 
* sysdeps/mips/pt-machine.h (__compare_and_swap): Liekwise.
2002-02-07  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Silence the
	gcc warning.
	(__pthread_spin_lock): Remove ".set noreorder".
	* sysdeps/mips/pt-machine.h (__compare_and_swap): Liekwise.
2002-02-08 16:14:43 +00:00
Andreas Jaeger
22c7c5e748 * sysdeps/mips/atomicity.h (exchange_and_add): Not use branch
likely.
	(atomic_add): Likewise.
	(compare_and_swap): Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
	Likewise.
2002-02-07 10:40:03 +00:00
Andreas Jaeger
a6049f98ed Do not use branch likely.
2002-02-05  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Not use
	branch likely.
	* sysdeps/mips/pt-machine.h (testandset): Likewise.
	(__compare_and_swap): Likewise.

>>>>>>> 1.469
2002-02-07 10:39:07 +00:00
Ulrich Drepper
cd30b01ee9 Update.
2002-02-07  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Account for
	alignment of the TCB and store total size and alignment of static
	TLS block in _dl_tls_static_size and _dl_tls_static_align.
	tls_index is a typedef.
	* sysdeps/generic/ldsodefs.h: Declare _dl_tls_static_size and
	_dl_tls_static_align.
	* sysdeps/i386/dl-tls.h: tls_index is a typedef.
	* elf/dl-support.c: Define _dl_tls_static_size and
	_dl_tls_static_align.
2002-02-07 08:44:37 +00:00
Ulrich Drepper
8d4b5a8a50 Update.
2002-02-06  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add --without-tls option.
	* sysdeps/i386/elf/configure.in: Don't check for TLS support if
	--without-tls is given.

	* sysdeps/generic/dl-tls.c: Include <tls.h>.

	* sysdeps/i386/dl-tls.h: Don't define anything if !USE_TLS.
2002-02-07 06:38:57 +00:00
Ulrich Drepper
3fb558781f Update.
2002-02-06  Ulrich Drepper  <drepper@redhat.com>

	* Versions.def [ld]: Add GLIBC_2.3.
	* elf/Versions [ld]: Add __tls_get_addr to GLIBC_2.3.
	* elf/Makefile (dl-routines): Add dl-tls.
	(distribute): Add dl-tls.h.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
	_dl_tls_module_cnt, add _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
	Add prototypes for _dl_next_tls_modid and _dl_determine_tlsoffset.
	* elf/dl-load.c (_dl_map_object_from_fd): Store alignment requirement
	along with the other info in the link map.  Change queueing of init
	images for double linked list.  Use _dl_next_tls_modid to compute
	l_tls_modid.
	* elf/rtld.c (_dl_start_final): Store alignment requirement
	along with the other info in rtld map and executable map.
	(dl_main): Add ld.so to the init image list if necessary.  Compute
	final module ID with _dl_next_tls_modid.
	* include/link.h (struct link_map): Add l_tls_previmage and
	l_tls_align.
	* eld/dl-support.c: Define _dl_tls_max_dtv_idx and _dl_tls_dtv_gaps.
	* sysdeps/i386/elf/Versions: New file.
	* sysdeps/generic/dl-tls.c: New file.
	* sysdeps/generic/dl-tls.h: New file.
	* sysdeps/i386/dl-tls.h: New file.

	attribute((packed)) to counter stupid people misusing gcc options.
2002-02-07 04:08:19 +00:00
Ulrich Drepper
535b764df5 Update.
* elf/rtld.c (_dl_start_final): Allocate TLS and initialize
	thread-pointer as soon as possible.
	* sysdeps/generic/ldsodefs.h: Include <tls.h>.  Define first TLS
	elements in rtld_global.
	* sysdeps/generic/tls.h: New file.
	* elf/Makefile (distribute): Add tls.h.
	* sysdeps/i386/dl-machine.h (elf_machine_rel): Add support for TLS
	relocations.  Not complete yet.

	* resolv/resolv.h: Allow user to define __need_res_state and only
	define __res_start structure then.
	* include/resolv.h: Only declare functions if _RESOLV_H_ is defined.
2002-02-05 00:57:29 +00:00