Commit Graph

169 Commits

Author SHA1 Message Date
Jakub Jelinek 32c075e1f0 . 2007-07-31 13:33:18 +00:00
Ulrich Drepper 48576885c6 * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
attempts.
2006-12-24 21:19:20 +00:00
Ulrich Drepper b52bbc1bdf USE_TLS support is now default.
* tls.make.c: USE_TLS support is now default.
	* csu/Versions: Likewise.
	* csu/libc-start.c: Likewise.
	* csu/libc-tls.c: Likewise.
	* csu/version.c: Likewise.
	* dlfcn/dlinfo.c: Likewise.
	* elf/dl-addr.c: Likewise.
	* elf/dl-cache.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-object.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-reloc.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-sysdep.c: Likewise.
	* elf/dl-tls.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/rtld.c: Likewise.
	* elf/tst-tls-dlinfo.c: Likewise.
	* elf/tst-tls1.c: Likewise.
	* elf/tst-tls10.h: Likewise.
	* elf/tst-tls14.c: Likewise.
	* elf/tst-tls2.c: Likewise.
	* elf/tst-tls3.c: Likewise.
	* elf/tst-tls4.c: Likewise.
	* elf/tst-tls5.c: Likewise.
	* elf/tst-tls6.c: Likewise.
	* elf/tst-tls7.c: Likewise.
	* elf/tst-tls8.c: Likewise.
	* elf/tst-tls9.c: Likewise.
	* elf/tst-tlsmod1.c: Likewise.
	* elf/tst-tlsmod13.c: Likewise.
	* elf/tst-tlsmod13a.c: Likewise.
	* elf/tst-tlsmod14a.c: Likewise.
	* elf/tst-tlsmod2.c: Likewise.
	* elf/tst-tlsmod3.c: Likewise.
	* elf/tst-tlsmod4.c: Likewise.
	* elf/tst-tlsmod5.c: Likewise.
	* elf/tst-tlsmod6.c: Likewise.
	* include/errno.h: Likewise.
	* include/link.h: Likewise.
	* include/tls.h: Likewise.
	* locale/global-locale.c: Likewise.
	* locale/localeinfo.h: Likewise.
	* malloc/arena.c: Likewise.
	* malloc/hooks.c: Likewise.
	* malloc/malloc.c: Likewise.
	* resolv/Versions: Likewise.
	* sysdeps/alpha/dl-machine.h: Likewise.
	* sysdeps/alpha/libc-tls.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
	* sysdeps/generic/tls.h: Likewise.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/ia64/dl-machine.h: Likewise.
	* sysdeps/ia64/libc-tls.c: Likewise.
	* sysdeps/mach/hurd/fork.c: Likewise.
	* sysdeps/mach/hurd/i386/tls.h: Likewise.
	* sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
	* sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
	* sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
	* sysdeps/s390/libc-tls.c: Likewise.
	* sysdeps/s390/s390-32/dl-machine.h: Likewise.
	* sysdeps/s390/s390-64/dl-machine.h: Likewise.
	* sysdeps/sh/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
	* sysdeps/x86_64/dl-machine.h: Likewise.
2006-10-27 23:11:47 +00:00
Ulrich Drepper 609cf61467 [BZ #3313]
2006-10-17  Jakub Jelinek  <jakub@redhat.com>
	* sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
	as signed longs, check for x_base + pos overflow.
	* sunrpc/Makefile (tests): Add tst-xdrmem2.
	* sunrpc/tst-xdrmem2.c: New test.

2006-10-18  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
	_dl_lookup_symbol_x code.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-runtime.c: Include sysdep-cancel.h.
	(_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
	scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
	instead of catomic_* macros.
	* elf/dl-sym.c: Include sysdep-cancel.h.
	(do_sym): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
	* elf/dl-close.c: Include sysdep-cancel.h.
	(_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
	* elf/dl-open.c: Include sysdep-cancel.h.
	(dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
	if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	[BZ #3313]
	* malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
	fastbin rather than end of fastbin array.

2006-10-18  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
	body macro.
	* sysdeps/x86_64/bits/atomic.h
	(__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
	(catomic_decrement): Use correct body macro.

2006-10-17  Jakub Jelinek  <jakub@redhat.com>

	* include/atomic.h: Add a unique prefix to all local variables
	in macros.
	* csu/tst-atomic.c (do_test): Test also catomic_* macros.

	* include/link.h: Include <rtld-lowlevel.h>.  Define struct
2006-10-18 19:26:30 +00:00
Ulrich Drepper cc7eecbfc0 [BZ #3313]
* malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
	determine highest fast bin to consolidate, always look into all of
	them.
	(do_check_malloc_state): Only require for empty bins for large
	sizes in main arena.
2006-10-13 20:53:14 +00:00
Ulrich Drepper dbc3d56b70 * malloc/malloc.c (do_check_malloc_state): Only require for empty
bins for large sizes in main arena.
2006-10-13 20:30:12 +00:00
Ulrich Drepper 6c7e1cf59e * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
* nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.

	* nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
	* sysdeps/generic/unsecvars.h: Add NIS_PATH.
2006-10-11 16:29:13 +00:00
Ulrich Drepper 469615bdd4 [BZ #2775]
* malloc/malloc.c (sYSMALLOc): Only call grow_heap if
	(long) (MINSIZE + nb - old_size) is positive.

	* malloc/arena.c (grow_heap): When growing bail even if new_size
	is negative.
2006-09-07 16:06:54 +00:00
Ulrich Drepper b80770b23f * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add
ld.so.

	* malloc/malloc.c (_int_malloc): Use full list insert and not
	shortcut which assumes the list is empty for large requests
	too.

	* elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
2006-08-31 17:16:11 +00:00
Ulrich Drepper 07014fcacd [BZ #2684]
2006-08-27  Ulrich Drepper  <drepper@redhat.com>
	[BZ #2684]
	* malloc/malloc.c (public_rEALLOc): Try harder by using other
	arenas if allocation failed.
	Patch mostly by Jan Edler <jan.edler@indexengines.com>.
2006-08-28 00:58:32 +00:00
Ulrich Drepper 41999a1a37 * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
waste bins[0..1].
	(malloc_state): Reduce bins size by 2.
	(_int_malloc): Fix test for large enough buffer for early termination.
	When no unsorted block matches perfectly and an exiting block has
	to be split, use full list insert and not shortcut which assumes
	the list is empty.
2006-08-27 04:38:05 +00:00
Ulrich Drepper 7463d5cb4d * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
keeps failing and heap growth or new heap creation isn't
	successful either.
	* malloc/tst-malloc.c (main): Add new tests.
2006-08-24 17:30:37 +00:00
Ulrich Drepper bd2c234116 platforms define as 512K. For 64-bit platforms as 32MB. The lower 2006-08-22 06:42:35 +00:00
Ulrich Drepper e404fb16fc * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
platforms define as 1MB.  For 64-bit platforms as 32MB.  The lower
	limit is needed to avoid the exploding of the address space
	requirement for secondary heaps.
	* malloc/arena.c (HEAP_MAX_SIZE): Define using
	DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
2006-08-22 06:19:12 +00:00
Ulrich Drepper 3997b7c413 [BZ #3040]
2006-08-21  Ulrich Drepper  <drepper@redhat.com>
	[BZ #3040]
	* sysdeps/unix/sysv/linux/openat.c: Fix compilation if
	__ASSUME_ATFCTS is defined.
2006-08-21 19:44:56 +00:00
Ulrich Drepper 72320021f7 * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
to sort in each call.
2006-08-19 22:34:27 +00:00
Ulrich Drepper 1d05c2fb9c * malloc/malloc.c: Dynamically size mmap treshold if the program
frees mmaped blocks.
	Patch by Valerie Henson and Arjan van de Ven.
2006-08-09 21:51:56 +00:00
Roland McGrath 16a1046837 * sysdeps/mach/hurd/faccessat.c: New file.
* sysdeps/mach/hurd/fchmodat.c: New file.
	* sysdeps/mach/hurd/fchownat.c: New file.
	* sysdeps/mach/hurd/fxstatat.c: New file.
	* sysdeps/mach/hurd/fxstatat64.c: New file.
	* sysdeps/mach/hurd/linkat.c: New file.
	* sysdeps/mach/hurd/mkdirat.c: New file.
	* sysdeps/mach/hurd/openat.c: New file.
	* sysdeps/mach/hurd/openat64.c: New file.
	* sysdeps/mach/hurd/symlinkat.c: New file.
	* sysdeps/mach/hurd/unlinkat.c: New file.
	* sysdeps/mach/hurd/xmknod.c (__xmknod): Just call __xmknodat.
	Guts move to ...
	* sysdeps/mach/hurd/xmknodat.c: ... here, new file.

	* hurd/lookup-at.c: New file.
	* hurd/Makefile (routines): Add it.
	* hurd/hurd/fd.h: Declare __file_name_lookup_at,
	__file_name_split_at and __directory_name_split_at.

	* hurd/hurd/lookup.h: Declare {,__}hurd_directory_name_split.

	* hurd/hurdlookup.c (__hurd_directory_name_split): Use __memrchr
	unconditionally.

	* sysdeps/mach/hurd/open.c: Define {,__,__libc_,}open64 as aliases.
	* sysdeps/mach/hurd/open64.c: New file.
2006-03-06 07:59:23 +00:00
Roland McGrath 7d013a64de * malloc/malloc.c (MALLOC_ALIGNMENT): Revert to (2 * SIZE_SZ) value.
The correct value differs only on powerpc32, and for now changing it
	there is causing more trouble than it's worth.

	* malloc/arena.c: Add compile-time sanity check on padding calculation.

2006-03-05  Jakub Jelinek  <jakub@redhat.com>

	* malloc/arena.c (heap_info): Adjust the padding size if
	MALLOC_ALIGNMENT > 2 * SIZE_SZ.
2006-03-06 06:18:43 +00:00
Ulrich Drepper 073f560e7b (MALLOC_ALIGNMENT): Set to __alignof__ (long double) if long double is more aligned than 2 * SIZE_SZ. (misaligned_chunk): Define. (public_rEALLOc, _int_free, _int_realloc): Use it. 2006-03-02 15:53:19 +00:00
Ulrich Drepper afd662ec27 ..
2005-11-21  Ulrich Drepper  <drepper@redhat.com>

	* locales/se_NO: Remove RCS ID line.
2005-11-21 15:45:19 +00:00
Roland McGrath 2182b1ea17 * malloc/malloc.c (munmap_chunk): Suppress warnings from last change.
* sysdeps/unix/sysv/linux/tcflush.c: Rewritten.
	* sysdeps/unix/sysv/linux/tcflow.c: Rewritten.
2005-11-07 23:00:18 +00:00
Ulrich Drepper 8e635611c9 * malloc/malloc.c (munmap_chunk): Add sanity checks.
* sysdeps/pthread/configure: Fix comment.
2005-11-06 17:08:48 +00:00
Ulrich Drepper bf58906631 * malloc/malloc.c (_int_free): Fail if block size is obviously wrong. 2005-10-13 04:48:35 +00:00
Ulrich Drepper 9bf248c6c6 Correctly implement M_MXFAST.
* malloc/malloc.c (struct malloc_state): Replace max_fast with flags
	fields.
	(global_max_fast): New variable.
	(set_max_fast): Change to not require arena parameter and to modify
	global_max_fast.  Change all callers.
	(get_max_fast): New macro.  Use this instead of directly accessing
	now removed max_fast arena member.
	(have_fastchunks): Use flags instead of max_fast.
	(clear_fastchunks): Likewise.
	(set_fastchunks): Likewise.
	(contiguous): Likewise.
	(noncontiguous): Likewise.
	(set_noncontiguous): Likewise.
	(set_contiguous): Likewise.
	(malloc_init_state): Explicitly set FASTCHUNKS_BIT.  Call set_max_fast
	only for main arena.
	* malloc/hooks.c (public_sET_STATe): Adjust set_max_fast use.
2005-10-12 20:18:07 +00:00
Ulrich Drepper 4b04154dcd [BZ #786]
* malloc/malloc.c (_int_realloc): Make error message clearer.
2005-09-27 01:55:24 +00:00
Ulrich Drepper 9ea9af192b * malloc/malloc.c (struct malloc_chunk): Fix comment typo.
(public_cALLOc): For mmapped chunks and perturb_byte != 0,
	don't clear SIZE_SZ bytes more than should be cleared.
2005-09-12 14:02:35 +00:00
Ulrich Drepper 56137dbc2d * malloc/malloc.c (public_cALLOc): We cannot skip the memory
clearing if perturb_byte != 0.
2005-03-20 18:09:53 +00:00
Ulrich Drepper 88764ae26a [BZ #779]
2005-03-10  Jakub Jelinek  <jakub@redhat.com>
	* math/test-misc.c (main): Add some more tests.

2005-03-17  Jakub Jelinek  <jakub@redhat.com>

	* posix/regcomp.c (re_compile_fastmap_iter): Fix check for failed
	__wcrtomb.  Check return values of other __wcrtomb calls.
	* posix/regex_internal.c (build_wcs_buffer, re_string_skip_chars):
	Change mbclen type to size_t.
	(build_wcs_upper_buffer): Change mbclen and mbcdlen type to size_t.
	Handle mb chars whose upper case doesn't have multibyte representation
	in locale's charset.

2005-03-15  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (_int_icalloc, _int_icomalloc, iALLOc,
	public_iCALLOc, public_iCALLOc, public_iCOMALLOc): Protect with
	#ifndef _LIBC.

	[BZ #779]
	* malloc/malloc.c (public_mTRIm): Initialize malloc if not yet
	initialized.

2005-03-10  Jakub Jelinek  <jakub@redhat.com>

	* misc/sys/cdefs.h (__always_inline): Define.
	* posix/bits/unistd.h (read, pread, pread64, readlink, getcwd, getwd):
	Use __always_inline instead of __inline.
	* socket/bits/socket2.h (recv, recvfrom): Likewise.
	* libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Likewise.
	* string/bits/string3.h (__memcpy_ichk, __memmove_ichk, __mempcpy_ichk,
	__memset_ichk, __strcpy_ichk, __stpcpy_ichk, __strncpy_ichk,
	__strcat_ichk, __strncat_ichk): Use __always_inline instead of
	__inline__ __attribute__ ((__always_inline__)).

2005-03-09  Jakub Jelinek  <jakub@redhat.com>

	* debug/tst-chk1.c: Include sys/socket.h and sys/un.h.
	(do_test): Add new tests for recv, recvfrom, getcwd, getwd and
	readlink.  Add some more tests for read, pread, pread64, fgets and
	fgets_unlocked.

	* posix/bits/unistd.h (read, pread, pread64, readlink,
	getcwd, getwd): Change macros into extern inline functions.
	(__read_alias, __pread_alias, __pread64_alias, __readlink_alias,
	__getcwd_alias, __getwd_alias): New prototypes.
	* socket/bits/socket2.h (recv, recvfrom): Change macros into
	extern inline functions.
	(__recv_alias, __recvfrom_alias): New prototypes.
	* libio/bits/stdio2.h (gets, fgets, fgets_unlocked): Change macros
	into extern inline functions.
	(__gets_alias, __fgets_alias, __fgets_unlocked_alias): New prototypes.

	* debug/pread_chk.c (__pread_chk): Fix order of arguments passed
	to __pread.
	* debug/pread64_chk.c (__pread64_chk): Fix order of arguments passed
	to __pread64.
2005-03-19 00:28:51 +00:00
Ulrich Drepper 854278dff8 * malloc/arena.c (ptmalloc_init): Recognize MALLOC_PERTURB_ and call
mallopt appropriately.
	* malloc/malloc.h: Define M_PERTURB.
	* malloc/malloc.c (perturb_byte): New variable.
	(alloc_perturb, free_perturb): New macros.
	(_int_malloc): Before returning, overwrite the memory if this is
	requested.
	(_int_free): Overwrite freed memory if requested.
	(mALLOPt): Handle M_PERTURB.
	* test-skeleton.c: Add call to mallopt with M_PERTURB command.
2005-03-08 00:50:21 +00:00
Ulrich Drepper 553cc5f9ad * sysdeps/unix/sysv/linux/libc_fatal.c: Print backtrace and memory
map if requested.
	* debug/chk_fail.c: Request backtrace and memory map dump.

	* Versions.def: Add GLIBC_2.4 for libc.
	* debug/fgets_chk.c: New file.
	* debug/fgets_u_chk.c: New file.
	* debug/getcwd_chk.c: New file.
	* debug/getwd_chk.c: New file.
	* debug/readlink_chk.c: New file.
	* debug/read_chk.c: New file.
	* debug/pread_chk.c: New file.
	* debug/pread64_chk.c: New file.
	* debug/recv_chk.c: New file.
	* debug/recvfrom_chk.c: New file.
	* debug/Versions: Add all new functions with version GLIBC_2.4.
	* debug/Makefile (routines): Add fgets_chk, fgets_u_chk, read_chk,
	pread_chk, pread64_chk, recv_chk, recvfrom_chk, readlink_chk,
	getwd_chk, and getcwd_chk.  Plus appropriate CFLAGS definitions.
	* debug/tst-chk1.c: Add more tests.
	* libio/bits/stdio2.h: Add macros for fgets and fgets_unlocked.
	* include/stdio.h: Declare __fgets_chk and __fgets_unlocked_chk.
	* posix/unistd.h: Include <bits/unistd.h> for fortification.
	* posix/bits/unistd.h: New file.
	* posix/Makefile (headers): Add bits/unistd.h.
	* socket/sys/socket.h: Include <bits/socket2.h> for fortification.
	* socket/bits/socket2.h: New file.
	* socket/Makefile (headers): Add bits/socket2.h.

	* string/bits/string3.h: Extend memset macro to check for zero 3rd
	parameter and use __memset_zero_constant_len_parameter in that case.
	* sysdeps/generic/memset_chk.c: Add
	__memset_zero_constant_len_parameter alias and linker warning.
	* debug/Versions: Add __memset_zero_constant_len_parameter to libc
	with version GLIBC_2.4.

	* sysdeps/generic/bits/types.h: Don't unnecessarily use __extension__
	in __STD_TYPE definition.

2005-02-21  Jakub Jelinek  <jakub@redhat.com>

	* malloc/malloc.c (malloc_printerr): If MALLOC_CHECK_={5,7}, print
	the error message rather than program name.

2005-02-21  Ulrich Drepper  <drepper@redhat.com>
2005-02-21 23:14:10 +00:00
Ulrich Drepper ae7f5313df Update.
* malloc/malloc.c (malloc_printerr): Print program name as part of
	error message.
2005-01-07 21:49:38 +00:00
Ulrich Drepper a334319f65 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Jakub Jelinek 0ecb606cb6 2.5-18.1 2007-07-12 18:26:36 +00:00
Ulrich Drepper 76761b6378 Update.
2004-12-11  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (_int_realloc): Add checks for corrupted memory.
	(_int_free): Make clear message are result of free() calls.

	* malloc/malloc.c (_int_realloc): Remove unnecessary tests for
	oldmem and size == 0.
2004-12-11 21:15:24 +00:00
Ulrich Drepper dc165f7b0b Update.
2004-12-09  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (public_rEALLOc): Add parameter checks.
	(_int_free): Provide better error message for invalid pointers.
2004-12-10 01:36:18 +00:00
Ulrich Drepper 6cce65407e Update.
* malloc/malloc.c (_int_malloc): Check for corruption of chunk
	which is about to be returned.
2004-11-20 04:45:06 +00:00
Ulrich Drepper 893e609847 Update.
2004-11-19  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (_int_free): Add a few more cheap tests for
	corruption.

	* debug/fprintf_chk.c: Adjust all users.
2004-11-19 21:35:00 +00:00
Ulrich Drepper 4f27c49622 Update.
2004-11-13  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (malloc_state): stat_lock_* elements need only
	be defined if THREAD_STATS is defined.  Remove pad0_ since it does
	not align with cache line sizes in general anyway.
2004-11-13 19:50:50 +00:00
Ulrich Drepper c120d94d58 Update.
2004-11-13  Jakub Jelinek  <jakub@redhat.com>

	* elf/rtld.c (print_statistics): Avoid segfaults if not all namespaces
	are used.  Fix computation of num_relative_relocations on RELA
	architectures other than IA-64 and Alpha.

2004-11-13  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (_int_free): Use munmap_chunk for handling
	mmaped memory.
2004-11-13 18:58:01 +00:00
Ulrich Drepper 37fa1953d5 Update.
* malloc/malloc.c (_int_free): Remove test for NULL parameter.
	(_int_realloc): Call _int_free only if memory parameter is not NULL.
2004-11-13 05:43:36 +00:00
Ulrich Drepper a9055cab7a Update.
2004-11-12  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/libc_fatal.c: Add new function __libc_message
	which performs the printing and simple format string handling.  The
	string is written to tty, stderr, syslog in this order, stopping after
	the first successful output.
	(__libc_fatal): Call __libc_message.
	* include/stdio.h: Declare __libc_message.
	* malloc/malloc.c (malloc_printerr): Use __libc_message.
	* debug/chk_fail.c: Also print message with __libc_message.
	* debug/test-strcpy_chk.c: Ensure that debug messages are not printed
	to the terminal or stderr.
	* debug/tst-chk1.c: Likewise.

	* posix/Makefile: Remove gpl2lgpl variable.
2004-11-13 03:13:00 +00:00
Ulrich Drepper 73f6403bd4 Update.
2004-10-30  Andreas Schwab  <schwab@suse.de>

	* sysdeps/unix/sysv/linux/waitid.c: Include <stddef.h> for NULL.

2004-10-30  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (_int_free): Use unique comments for the error
	cases.
2004-10-30 18:04:21 +00:00
Ulrich Drepper c0f62c5678 [BZ #77]
Update.
	Add support for namespaces in the dynamic linker.
	* dlfcn/Makefile (libdl-routines): Add dlmopen.
	* dlfcn/Versions [libdl, GLIBC_2.3.4]: Add dlmopen.
	* dlfcn/dlfcn.h: Define Lmid_t, LM_ID_BASE, and LM_ID_NEWLM.
	Declare dlmopen.  Document RTLD_DI_LMID.
	* dlfcn/dlinfo.c: Handle RTLD_DI_LMID.
	* dlfcn/dlmopen.c: New file.
	* dlfcn/dlopen.c: Pass new parameter to _dl_open.
	* dlfcn/dlopenold.c: Likewise.
	* elf/dl-addr.c: Adjust for removal of GL(dl_loaded).
	* elf/dl-caller.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-conflict.c: Likewise.
	* elf/dl-debug.c: Likewise.
	* elf/dl-lookup.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-version.c: Likewise.
	* elf/do-lookup.h: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
	* elf/dl-depsc: Likewise.  Add new parameter to _dl_map_object.
	* elf/dl-fini.c: Call destructors in all namespaces.
	* elf/dl-iteratephdr.c: Compute total nloaded.  Adjust for removal of
	GL(dl_loaded).
	* elf/dl-libc.c: Pass new parameter to _dl_open.  Adjust for removal
	of GL(dl_loaded).
	* elf/dl-load.c (_dl_map_object_from_fd): Don't load ld.so a second
	time.  Reuse the one from the main namespace in all others.
	Pass new parameter to _dl_new_object.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-object.c: Take new parameter.  Use it to initialize l_ns.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-open.c (_dl_open): Take new parameter.
	Adjust for removal of GL(dl_loaded).
	* elf/dl-support.c: Replace global _dl_loaded etc variables with
	_dl_ns variable.
	* include/dlfcn.h: Adjust prototype of _dl_open.
	Define __LM_ID_CALLER.
	* include/link.h: Add l_real, l_ns, and l_direct_opencount elements.
	* sysdeps/generic/dl-tls.c: Bump TLS_STATIC_SURPLUS.  Since libc is
	using TLS we need memory appropriate to the number of namespaces.
	* sysdeps/generic/ldsodefs.h (struct rtld_global): Replace _dl_loaded,
	_dl_nloaded, _dl_global_scope, _dl_main_searchlist, and
	_dl_global_scope_alloc with _dl_ns element.  Define DL_NNS.
	Adjust prototypes of _dl_map_object and member in rtld_global_ro.
	* malloc/malloc.c: Include <dlfcn.h>.
	* malloc/arena.c (ptmalloc_init): If libc is not in primary namespace,
	never use brk.
	* elf/Makefile: Add rules to build and run tst-dlmopen1 and
	tst-dlmopen2.
	* elf/tst-dlmopen1.c: New file.
	* elf/tst-dlmopen1mod.c: New file.
	* elf/tst-dlmopen2.c: New file.

	* elf/dl-close.c: Improve reference counting by tracking direct loads.
	* elf/dl-lookup.c (add_dependency): Likewise.
	* elf/dl-open.c (dl_open_worker): Likewise.
	* elf/rtld.c (dl_main): Likewise.

2004-09-09  GOTO Masanori  <gotom@debian.or.jp>

	[BZ #77]
	* elf/dl-close.c: Count down l_opencount to check not only for
	l_reldeps, but also l_initfini.

2004-10-13  Ulrich Drepper  <drepper@redhat.com>
2004-10-14 02:08:23 +00:00
Ulrich Drepper c56da3a39b Update.
* posix/tst-getaddrinfo2.c: Include stdlib.h and string.h.
	(do_test): Use %p instead of 0x%08X to print a pointer.

	* malloc/malloc.c: Include stdio-common/_itoa.h.
2004-10-06 18:09:57 +00:00
Ulrich Drepper 8088488d6d (public_vALLOc): Add missing use of hooks. (public_pVALLOc): Likewise. 2004-10-01 23:51:18 +00:00
Ulrich Drepper 54915e9e37 Update.
* malloc/malloc.c (malloc_printerr): Use syslog if writev failed.
2004-09-23 04:45:09 +00:00
Ulrich Drepper 3e00177e5a nt_free): Only do arena boundary check for contiguous arenas. 2004-09-10 19:56:41 +00:00
Ulrich Drepper a962d7dc18 Update.
2004-09-09  Ulrich Drepper  <drepper@redhat.com>

	* malloc/hooks.c (top_check): Print top chunk corruption as normal
	error message.

	* malloc/malloc.c (malloc_printerr): Don't make informational
	message look like error message.
2004-09-09 21:10:29 +00:00
Ulrich Drepper 6bf4302e76 (_int_free): Add inexpensive double free and memory corruption tests. (malloc_printf_nc): Renamed to malloc_printerr. Second parameter is no format string anymore. Don't use stdio. Adjust all callers. 2004-09-09 09:03:28 +00:00