Commit Graph

494 Commits

Author SHA1 Message Date
Ulrich Drepper
6060802811 * malloc/memusage.c: Handle realloc with new size of zero and
non-NULL pointer correctly.
	(me): Really write first record twice.
	(struct entry): Make format bi-arch safe.
	(dest): Write out more realloc statistics.
	* malloc/memusagestat.c (struct entry): Make format bi-arch safe.
2006-12-08 17:14:05 +00:00
Ulrich Drepper
e1b370832c [BZ #3465]
* sunrpc/clnt_raw.c: Minimal message improvements.
	* sunrpc/pm_getmaps.c: Likewise.
	* nis/nss_nisplus/nisplus-publickey.c: Likewise.
	* nis/nis_print_group_entry.c: Likewise.
	* locale/programs/repertoire.c: Likewise.
	* locale/programs/charmap.c: Likewise.
	* malloc/memusage.sh: Likewise.
	* elf/dl-deps.c: Likewise.
	* locale/programs/ld-collate.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* malloc/memusagestat.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/rpc_main.c: Likewise.
	* nscd/cache.c: Likewise.
	* locale/programs/repertoire.c: Unify output messages.
	* locale/programs/charmap.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* nscd/selinux.c: Likewise.
	* elf/cache.c: Likewise.
	Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
2006-11-10 20:55:22 +00:00
Ulrich Drepper
9666e36c18 * malloc/memusage.c (dest): Reset not_me back to false after
printing statistics.
2006-11-03 17:01:41 +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
8099361ecd * include/atomic.c: Define catomic_* operations.
* sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
	* stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
	* malloc/memusage.c: Likewise.
	* gmon/mcount.c: Likewise.
	* elf/dl-close.c: Likewise.
	* elf/dl-open.c: Likewise.
	* elf/dl-profile.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/dl-runtime.c: Likewise.
	* elf/dl-fptr.c: Likewise.
	* resolv/res_libc.c: Likewise.
2006-10-11 09:01:52 +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
0c1c6c6c08 * malloc/memusagestat.c: Silence warnings. 2006-08-09 22:21:20 +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
Ulrich Drepper
f50fa10c8a * malloc/memusage.sh (memusageso): Add quotes.
(memusagestat): Likewise.
	* debug/xtrace.sh (pcprofileso): Likewise.
	(pcprofiledump): Likewise.
	* debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
	replacement.
	* malloc/Makefile ($(objpfx)memusage): Likewise.
2006-05-19 16:48:27 +00:00
Ulrich Drepper
ceba6be798 * malloc/arena.c (ptmalloc_init): Don't call __malloc_check_init
if MALLOC_CHECK_ env var contains an empty string.
2006-04-24 17:26:23 +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
Roland McGrath
2fd4de4b15 [BZ #321]
2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
	* malloc/obstack.c: Fix old comments.  Update FSF snail mail address.
	* malloc/obstack.h: Likewise.

	[BZ #321]
	Fix portability bugs encountered when porting to Itanium.
	* malloc/obstack.h (obstack_empty_p, obstack_finish): Do not
	assume that the "contents" member is suitably aligned.  It is
	not, for some hosts and alignments: e.g., Itanium, long-double.
	* malloc/obstack.c (_obstack_begin, _obstack_begin_1,
	_obstack_newchunk): Likewise.
	* malloc/obstack.c: Include <stddef.h>, for size_t.
	Include <inttypes.h>, <stdint.h> if needed and available.
	(DEFAULT_ALIGNMENT): Now an enum constant, not a macro.
	Use C89 offsetof rather than K&R trick.
	Use the maximum alignment of uintmax_t, long double, void *
	rather than the alignment of double.
	(union fooround): Use uintmax_t, long double, void * members
	rather than just long and double.

	[BZ #321]
	Fix portability bugs encountered when porting to the IBM iSeries,
	where pointers are 256 bits wide and no integers are that wide.
	* malloc/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
	All uses changed to:
	(__BPTR_ALIGN, __PTR_ALIGN): New macros.
	(struct _obstack_chunk.temp): Change from int to a union
	of pointer and int.  All uses changed.

	[BZ #321]
	* malloc/obstack.c (print_and_abort) [!_LIBC]:
	Call fprintf (stderr, ...), not __fxprintf (NULL, ...).
	[_LIBC && USE_IN_LIBIO]: Don't include <wchar.h>; no longer needed.
2006-01-11 05:43:11 +00:00
Ulrich Drepper
e56bad6ce6 Update copyright year. 2006-01-01 19:15:56 +00:00
Ulrich Drepper
9d13fb2413 Moved to csu/errno-loc.c. 2005-12-14 15:06:39 +00:00
Ulrich Drepper
43bc8ac6ea * catgets/gencat.c: Use GPL, not LGPL.
* elf/cache.c: Likewise.
	* elf/chroot_canon.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* elf/readlib.c: Likewise.
	* iconv/dummy-repertoire.c: Likewise.
	* iconv/iconv_charmap.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* locale/programs/3level.h: Likewise.
	* locale/programs/charmap-dir.c: Likewise.
	* locale/programs/charmap-dir.h: Likewise.
	* locale/programs/charmap-kw.gperf: Likewise.
	* locale/programs/charmap.c: Likewise.
	* locale/programs/charmap.h: Likewise.
	* locale/programs/config.h: Likewise.
	* locale/programs/ld-address.c: Likewise.
	* locale/programs/ld-collate.c: Likewise.
	* locale/programs/ld-ctype.c: Likewise.
	* locale/programs/ld-identification.c: Likewise.
	* locale/programs/ld-measurement.c: Likewise.
	* locale/programs/ld-messages.c: Likewise.
	* locale/programs/ld-monetary.c: Likewise.
	* locale/programs/ld-name.c: Likewise.
	* locale/programs/ld-numeric.c: Likewise.
	* locale/programs/ld-paper.c: Likewise.
	* locale/programs/ld-telephone.c: Likewise.
	* locale/programs/ld-time.c: Likewise.
	* locale/programs/linereader.c: Likewise.
	* locale/programs/linereader.h: Likewise.
	* locale/programs/locale-spec.c: Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* locale/programs/localedef.h: Likewise.
	* locale/programs/locarchive.c: Likewise.
	* locale/programs/locfile-kw.gperf: Likewise.
	* locale/programs/locfile-token.h: Likewise.
	* locale/programs/locfile.c: Likewise.
	* locale/programs/locfile.h: Likewise.
	* locale/programs/repertoire.c: Likewise.
	* locale/programs/repertoire.h: Likewise.
	* locale/programs/simple-hash.c: Likewise.
	* locale/programs/simple-hash.h: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* locale/programs/xstrdup.c: Likewise.
	* malloc/memusagestat.c: Likewise.
	* nscd/aicache.c: Likewise.
	* nscd/cache.c: Likewise.
	* nscd/connections.c: Likewise.
	* nscd/dbg_log.c: Likewise.
	* nscd/gai.c: Likewise.
	* nscd/getgrgid_r.c: Likewise.
	* nscd/getgrnam_r.c: Likewise.
	* nscd/gethstbyad_r.c: Likewise.
	* nscd/gethstbynm2_r.c: Likewise.
	* nscd/getpwnam_r.c: Likewise.
	* nscd/getpwuid_r.c: Likewise.
	* nscd/grpcache.c: Likewise.
	* nscd/hstcache.c: Likewise.
	* nscd/initgrcache.c: Likewise.
	* nscd/mem.c: Likewise.
	* nscd/nscd.c: Likewise.
	* nscd/nscd_conf.c: Likewise.
	* nscd/pwdcache.c: Likewise.
	* posix/getconf.c: Likewise.
	* sysdeps/generic/nscd_setup_thread.c: Likewise.
	* sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
2005-12-07 05:49:17 +00:00
Roland McGrath
bd7b22b2eb * malloc/tst-mallocfork.c (do_test): Make sure sa_flags is
initialized.  Reported by John Reiser <jreiser@BitWagon.com>.
2005-12-06 00:50:15 +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
504417ac97 [BZ #804]
* malloc/tst-mtrace.sh: Work around for bootstraping.
2005-10-14 23:42:04 +00:00
Ulrich Drepper
18b8e054cf * sysdeps/unix/opendir.c (__opendir): Pass extra argument to
__alloc_dir.
	(__alloc_dir): Only close descriptor on error if new parameter is true.
	* sysdeps/unix/fdopendir.c (fdopendir): Pass extra argument to
	__alloc_dir.  Don't close fd on error.
	* include/dirent.h (__alloc_dir): Adjust prototype.

	* include/sys/mman.h (__mremap): Add ellipsis.
	* malloc/memusage.c: Adjust mremap wrapper for optional additional
	parameter.
2005-10-14 21:11:09 +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
04ec80e410 * include/malloc.h: Remove _int_new_arena prototype.
* malloc/arena.c (_int_new_arena): Move definition ahead of
	arena_get2 and make static.
2005-10-12 20:49:06 +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
e851dca130 * malloc/arena.c (ptmalloc_unlock_all2): Reset atfork_arena_ptr. 2005-10-10 13:44:03 +00:00
Ulrich Drepper
c0c9615cbb * posix/regexec.c (update_cur_sifted_state, check_arrival,
check_arrival_add_next_nodes): Avoid using uninitialized variable.

	* malloc/memusage.c (dest): Fix a bunch of warnings on 32-bit arches.

	* sysdeps/i386/fpu/libm-test-ulps: Update for GCC 4.0.x.
2005-09-30 15:46:19 +00:00
Ulrich Drepper
7dac9f3d90 [BZ #838]
* malloc/arena.c (ptmalloc_lock_all): If global lock already taken
	by the same thread, just bump the counter.
	(ptmalloc_unlock_all): If counter for recursive locks hasn't reached
	zero, don't do anything else.
	* malloc/Makefile (tests): Add tst-mallocfork.
	* malloc/tst-mallocfork.c: New file.
2005-09-27 05:45:26 +00:00
Ulrich Drepper
4b04154dcd [BZ #786]
* malloc/malloc.c (_int_realloc): Make error message clearer.
2005-09-27 01:55:24 +00:00
Roland McGrath
58b523646c [BZ #1331]
2005-09-12  Roland McGrath  <roland@redhat.com>
	[BZ #1331]
	* malloc/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
	macro argument.
	Reported by Matej Vela <vela@debian.org>.
2005-09-12 19:56:23 +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
d6c7294ed6 * sysdeps/ia64/fpu/libm_error.c (__libm_error_support): Don't abort.
2005-08-17  Robert Love  <rml@novell.com>

	* sysdeps/unix/sysv/linux/sys/inotify.h: Add IN_MOVE_SELF event.

2005-08-19  Bruno Haible  <bruno@clisp.org>

	* intl/localealias.c (read_alias_file): In case of failure, close the
	file descriptor and sort the array before returning.

2005-08-19  Ulrich Drepper  <drepper@redhat.com>

	* malloc/Makefile: Link libmemusage.so with ld.so.
	* malloc/memusage.c: Use atomic operations for all counter and size
	 computations.  Handle thread stacks.
	* sysdeps/generic/memusage.h: Define memusage_cntr_t and
	memusage_size_t.
	* sysdeps/i386/i686/memusage.h: New file.
	* include/atomic.h: Define atomic_max and atomic_min.

	* debug/tst-chk1.c: Add tests for mbstowcs and wcstombs.
2005-08-20 01:22:05 +00:00
Ulrich Drepper
8a259a2310 * include/stdio.h (__fxprintf): Remove wfmt argument.
* stdio-common/fxprintf.c: Include assert.h, ctype.h and wchar.h.
	(__fxprintf): Remove wfmt argument, create wfmt format string on
	the fly from fmt.
	* argp/argp-fmtstream.c: Adjust all __fxprintf callers.
	* argp/argp-help.c: Likewise.
	* assert/assert-perr.c: Likewise.
	* assert/assert.c: Likewise.
	* gmon/gmon.c: Likewise.
	* inet/rcmd.c: Likewise.
	* malloc/obstack.c: Likewise.
	* misc/error.c: Likewise.
	* misc/getpass.c: Likewise.
	* posix/getopt.c: Likewise.
	* resolv/res_hconf.c: Likewise.
	* stdio-common/perror.c: Likewise.
	* stdio-common/psignal.c: Likewise.
	* stdlib/fmtmsg.c: Likewise.
	* sunrpc/auth_unix.c: Likewise.
	* sunrpc/clnt_perr.c: Likewise.
	* sunrpc/clnt_tcp.c: Likewise.
	* sunrpc/clnt_udp.c: Likewise.
	* sunrpc/clnt_unix.c: Likewise.
	* sunrpc/svc_simple.c: Likewise.
	* sunrpc/svc_tcp.c: Likewise.
	* sunrpc/svc_udp.c: Likewise.
	* sunrpc/svc_unix.c: Likewise.
	* sunrpc/xdr.c: Likewise.
	* sunrpc/xdr_array.c: Likewise.
	* sunrpc/xdr_rec.c: Likewise.
	* sunrpc/xdr_ref.c: Likewise.
	* sysdeps/generic/wordexp.c: Likewise.
2005-07-20 17:51:14 +00:00
Ulrich Drepper
df6f89692f * wcsmbs/bits/wchar2.h: Add definitions for wcrtomb, mbsrtowcs,
wcsrtombs, mbsnrtowcs, and wcsnrtombs.
	* debug/Makefile (routines): Add wcrtomb_chk, mbsrtowcs_chk,
	wcsrtombs_chk, mbsnrtowcs_chk, and wcsnrtombs_chk.
	* debug/Versions: Add __wcrtomb_chk, __mbsrtowcs_chk,
	__wcsrtombs_chk, __mbsnrtowcs_chk, and __wcsnrtombs_chk.
	* debug/tst-chk1.c: Add tests for new functions.
	* debug/mbsnrtowcs_chk.c: New file.
	* debug/mbsrtowcs_chk.c: New file.
	* debug/wcrtomb_chk.c: New file.
	* debug/wcsnrtombs_chk.c: New file.
	* debug/wcsrtombs_chk.c: New file.

	* include/stdio.h: Add declaration for __fxprintf.
2005-07-20 07:43:27 +00:00
Ulrich Drepper
bfc832ccf1 * elf/dl-close.c: Include stddef.h.
(_dl_close): If called recursively, just remember GC needs to be rerun
	and decrease l_direct_opencount.  Avoid GC if l_direct_opencount
	decreased to 1.  Rerun GC at the end if any destructor unloaded some
	additional libraries.
	* elf/Makefile: Add rules to build and run unload6 test.
	* elf/unload6.c: New test.
	* elf/unload6mod1.c: New file.
	* elf/unload6mod2.c: New file.
	* elf/unload6mod3.c: New file.

	* malloc/hooks.c (mem2chunk_check): Add magic_p argument, set *magic_p
	if magic_p is not NULL.
	(top_check): Invoke MALLOC_FAILURE_ACTION if MORECORE failed.
	(malloc_check): Fail if sz == -1.
	(free_check): Adjust mem2chunk_check caller.
	(realloc_check): Likewise.  Fail if bytes == -1.  If bytes == 0 and
	oldmem != NULL, call free_check and return NULL.  If reallocating
	and returning NULL, invert magic byte again to make oldmem valid
	region for further checking.
	(memalign_check): Fail if bytes == -1.
	* malloc/Makefile: Add rules to build and run tst-mcheck.
	* malloc/tst-mcheck.c: New test.
2005-04-27 01:39:11 +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
a5a33449fb (ptmalloc_init): Recognize MALLOC_PERTURB_ and call mallopt appropriately. 2005-03-08 00:44:05 +00:00
Roland McGrath
a28b6b0a55 2005-03-01 Alfred M. Szmidt <ams@gnu.org>
* malloc/arena.c: #include <stdbool.h> outside of [SHARED &&
	USE_TLS && !USE___THREAD].
2005-03-01 20:30:29 +00:00
Ulrich Drepper
c6359097c6 * malloc/Makefile (CFLAGS-mcheck-init.c): Add.
* sunrpc/Makefile: Add $(PIC-ccflag) to CFLAGS-x* for
	librpcsvc.a objects.
2005-02-22 09:53:18 +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
1b85ed0ce2 * posix/getconf.c: Update copyright year.
* nss/getent.c: Likewise.
	* nscd/nscd_nischeck.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* catgets/gencat.c: Likewise.
	* csu/version.c: Likewise.
	* elf/ldd.bash.in: Likewise.
	* elf/sprof.c (print_version): Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* nscd/nscd.c (print_version): Likewise.
	* debug/xtrace.sh: Likewise.
	* malloc/memusage.sh: Likewise.
	* malloc/mtrace.pl: Likewise.
	* debug/catchsegv.sh: Likewise.
2005-01-12 23:43:44 +00:00
Ulrich Drepper
1b2ba89104 Always include features.h.
Remove no-glibc support.
2005-01-12 01:56:21 +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
9ee4c01788 Update.
* misc/sys/cdefs.h (__attribute_warn_unused_result__): Define.
	* stdlib/stdlib.h: Make realloc with
	__attribute_warn_unused_result__ instead of __wur.
	* malloc/malloc.h: Add __wur and __attribute_warn_unused_result__
	markers as in <stdlib.h>.
2005-01-07 19:42:24 +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
f8d8a2650c Update.
22004-06-05  Joseph S. Myers  <jsm@polyomino.org.uk>

	* malloc/Makefile (install-bin): Remove memusage.
	(install-bin-script): Add memusage.

004-12-15  Jakub Jelinek  <jakub@redhat.com>
2004-12-15 18:44:54 +00:00
Ulrich Drepper
b102cfc2f9 [BZ #457]
Update.
2004-10-19  Wolfram Gloger  <wg@malloc.de>

	* malloc/hooks.c (mem2chunk_check, top_check): Handle
	non-contiguous arena.  Reported by Michael Dalton
	<mwdalton@stanford.edu> [BZ #457].  Add further checks for top chunk.
2004-12-14 21:18: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
8c7d3691c4 Update.
2004-12-10  Ulrich Drepper  <drepper@redhat.com>

	* malloc/arena.c (arena_get2): Prevent endless loop if arenas and
	list lock are taken.
2004-12-10 11:42:45 +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
5f21997b9d Update.
2004-10-18  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-libc.c (__libc_dlsym_private, __libc_register_dl_open_hook):
	New functions.
	(__libc_dlopen_mode): Call __libc_register_dl_open_hook and
	__libc_register_dlfcn_hook.
	* dlfcn/Makefile (routines, elide-routines.os): Set.
	Add rules to build and test tststatic2.
	* dlfcn/tststatic2.c: New test.
	* dlfcn/modstatic2.c: New test module.
	* dlfcn/dladdr.c: Call _dlfcn_hook from libdl.so if not NULL.
	Define __ prefixed routine in libc.a and in libdl.a just call it.
	* dlfcn/dladdr1.c: Likewise.
	* dlfcn/dlclose.c: Likewise.
	* dlfcn/dlerror.c: Likewise.
	* dlfcn/dlinfo.c: Likewise.
	* dlfcn/dlmopen.c: Likewise.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.
	* dlfcn/dlsym.c: Likewise.
	* dlfcn/dlvsym.c: Likewise.
	* dlfcn/sdladdr.c: New file.
	* dlfcn/sdladdr1.c: New file.
	* dlfcn/sdlclose.c: New file.
	* dlfcn/sdlerror.c: New file.
	* dlfcn/sdlinfo.c: New file.
	* dlfcn/sdlopen.c: New file.
	* dlfcn/sdlsym.c: New file.
	* dlfcn/sdlvsym.c: New file.
	* dlfcn/Versions (libdl): Export _dlfcn_hook@GLIBC_PRIVATE.
	* include/dlfcn.h (DL_CALLER_DECL, DL_CALLER RETURN_ADDRESS): Define.
	(struct dlfcn_hook): New type.
	(_dlfcn_hook): New extern decl.
	(__dlopen, __dlclose, __dlsym, __dlerror, __dladdr, __dladdr1,
	__dlinfo, __dlmopen, __libc_dlsym_private,
	__libc_register_dl_open_hook, __libc_register_dlfcn_hook): New
	prototypes.
	(__dlvsym): Use DL_CALLER_DECL.
	* include/libc-symbols.h: Define libdl_hidden_proto and friends.

	* malloc/arena.c (_dl_open_hook): Extern decl.
	(ptmalloc_init): Don't call _dl_addr when dlopened from statically
	linked programs but don't use brk for them either.
2004-10-18 23:17:46 +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
e582c5eda2 Update.
2004-10-04  Ulrich Drepper  <drepper@redhat.com>

	* malloc/mtrace.pl: Avoid calling location unless it is needed for
	output.  Patch by Edward Bishop <binutils@gmail.com>.

	* nscd/Makefile (CFLAGS-gai.c): Add -fpie.
2004-10-04 23:22:47 +00:00
Ulrich Drepper
26d550d38b Update.
2004-03-18  Jakub Jelinek  <jakub@redhat.com>

	* malloc/arena.c (aligned_heap_area): New variable.
	(new_heap): If aligned_heap_area != NULL, attempt to use that
	first.  If HEAP_MAX_SIZE << 1 area is already HEAP_MAX_SIZE bytes
	aligned, remember the second half in aligned_heap_area.
	(delete_heap): Clear aligned_heap_area if deleting the area right
	before aligned_heap_area.
2004-10-04 02:27:39 +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
a19fe332c1 Update.
* malloc/arena.c (ptmalloc_init): Allow MALLOC_CHECK_==0 to
	disable all checking.
2004-09-28 18:25:52 +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
79937577d1 Update.
2004-09-13  Ulrich Drepper  <drepper@redhat.com>

	* misc/sys/cdefs.h: Restore old definition of __P.
	* csu/munch.awk: Remove uses of __P and __PMT.
	* gmon/gmon.c: Likewise.
	* hesiod/hesiod.h: Likewise.
	* include/stdio.h: Likewise.
	* io/fts.c: Likewise.
	* libio/genops.c: Likewise.
	* libio/libioP.h: Likewise.
	* libio/fileops.c: Likewise.
	* libio/iolibio.h: Likewise.
	* libio/libio.h: Likewise.
	* libio/memstream.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/oldstdfiles.c: Likewise.
	* libio/iopopen.c: Likewise.
	* libio/vsnprintf.c: Likewise.
	* libio/vswprintf.c: Likewise.
	* libio/wgenops.c: Likewise.
	* libio/oldiopopen.c: Likewise.
	* locale/programs/xmalloc.c: Likewise.
	* locale/programs/xstrdup.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* misc/getttyent.c: Likewise.
	* misc/getusershell.c: Likewise.
	* nis/rpcsvc/ypupd.h: Likewise.
	* posix/fnmatch.h: Likewise.
	* posix/glob.h: Likewise.
	* resolv/arpa/nameser.h: Likewise.
	* resolv/gethnamaddr.c: Likewise.
	* resolv/resolv.h: Likewise.
	* resolv/inet_net_ntop.c: Likewise.
	* resolv/inet_net_pton.c: Likewise.
	* resolv/res_init.c: Likewise.
	* resolv/nss_dns/dns-network.c: Likewise.
	* stdio-common/vfprintf.c: Likewise.
	* stdio-common/reg-printf.c: Likewise.
	* sysdeps/generic/chflags.c: Likewise.
	* sysdeps/generic/fchflags.c: Likewise.
	* sysdeps/generic/glob.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* sysdeps/generic/memcmp.c: Likewise.
	* sysdeps/generic/memcopy.h: Likewise.
	* sysdeps/generic/morecore.c: Likewise.
	* sysdeps/generic/sstk.c: Likewise.
	* sysdeps/posix/sigvec.c: Likewise.
	* sysdeps/posix/ttyname_r.c: Likewise.
	* sysdeps/standalone/arm/bits/errno.h: Likewise.
	* sysdeps/standalone/standalone.h: Likewise.
	* sysdeps/standalone/i386/force_cpu386/brdinit.c: Likewise.
	* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
	* sysdeps/unix/arm/start.c: Likewise.
	* sysdeps/unix/bsd/sigaction.c: Likewise.
	* sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise.
	* sysdeps/unix/bsd/sun/sunos4/wait4.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Likewise.
	* sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise.
	* sysdeps/unix/sparc/start.c: Likewise.
	* sysdeps/unix/sysv/getdents.c: Likewise.
	* sysdeps/unix/sysv/irix4/fpathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
	* sysdeps/unix/sysv/irix4/getrusage.c: Likewise.
	* sysdeps/unix/sysv/irix4/pathconf.c: Likewise.
	* sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
	* sysdeps/unix/sysv/irix4/sigtramp.c: Likewise.
	* sysdeps/unix/sysv/irix4/start.c: Likewise.
	* sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sco3.2.4/getgroups.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/__setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sethostname.c: Likewise.
	* sysdeps/unix/sysv/sysv4/setsid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
	* sysdeps/unix/sysv/sysv4/waitpid.c: Likewise.
	* sysdeps/unix/sysv/sysv4/solaris2/getdents.c: Likewise.
	* time/tzset.c: Likewise.
	* time/strftime_l.c: Likewise.
	* time/strptime_l.c: Likewise.
	* crypt/md5.h: Likewise.
2004-09-14 04:41:35 +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
14abadc8bf Update.
* malloc/malloc.c (_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.
	* malloc/hooks.c: Adjust malloc_printf_nc callers.
2004-09-09 17:15:57 +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
Ulrich Drepper
9d0cdc0eea Update.
2004-09-08  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (_int_free): Add inexpensive double free test.
2004-09-09 01:58:35 +00:00
Roland McGrath
b80163bd53 2004-09-08 Roland McGrath <roland@redhat.com>
* malloc/mcheck.c: Don't use __P.
	Use prototypes definitions for static functions.
2004-09-08 20:36:02 +00:00
Ulrich Drepper
06d6611aac Update.
2004-09-08  Ulrich Drepper  <drepper@redhat.com>

	* malloc/arena.c: Remove __MALLOC_P uses.
	* malloc/malloc.c: Likewise.

	* malloc/mtrace.c: Remove __P uses.
	* malloc/mcheck-init.c: Likewise.
2004-09-08 08:12:39 +00:00
Ulrich Drepper
67254a97d9 Update.
* malloc/malloc.h: Don't define __THROW if it is already defined.
2004-09-08 06:31:04 +00:00
Ulrich Drepper
3e030bd5f9 Update.
* malloc/hooks.c (DEFAULT_CHECK_ACTION): Moved to malloc.c.
	(check_action): Likewise.
	When printing error messages, use malloc_printf_nc now instead of
	fiddling with the streams cancellation flag in every place.
	* malloc/malloc.c (DEFAULT_CHECK_ACTION): New definition.  Change
	default to 3.
	(check_action): New variable.
	(unlink): Print error message and eventually terminate in case list
	is corrupted.
	(malloc_printf_nc): New function.  Use it in _int_free.
	Change proposed by Arjan van de Ven.
2004-08-21 20:19:54 +00:00
Ulrich Drepper
eba19d2be7 Update.
2004-08-13  Ulrich Drepper  <drepper@redhat.com>

	* elf/sprof.c (read_symbols): When comparing aliases, prefer
	strong over weak symbols if both don't start with '_'.

	* malloc/malloc.c: Use strong_alias instead of weak_alias wherever
	possible.
2004-08-13 18:39:44 +00:00
Ulrich Drepper
19c589d904 [BZ #285]
Update.
	* malloc/memusage.c (me): Use creat64, not creat.
	* malloc/memusagestat.c: Fix handling of very large sizes.  [BZ #285]
	Patch by Guy Maor <guymaor@yahoo.com>.
2004-08-10 04:18:14 +00:00
Ulrich Drepper
0b8d139044 Update.
2004-06-29  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/printf-parsemb.c (__parse_one_specmb): Initialize
	info.extra.  Patch by Marcus Meissner.
2004-06-29 17:28:24 +00:00
Ulrich Drepper
5fa2f83c9e Update.
2004-06-20  Jim Meyering  <jim@meyering.net>

	* malloc/obstack.h (obstack_base): Cast to `void *', to align with
	documentation.
2004-06-29 06:28:18 +00:00
Ulrich Drepper
1773d1ba5f Update.
2004-05-25  Ulrich Drepper  <drepper@redhat.com>

	* nss/digits_dots.c (__nss_hostname_digits_dots): Remove typep and
	flags parameter, convert afp to simple int parameter.  Adjust code.
	typep was never != NULL and flags therefore also unused.  *afp is
	never modified.
	* nss/nsswitch.h: Adjust __nss_hostname_digits_dots prototype.
	* nss/getXXbyYY.c: Remove HAVE_TYPE handling.  Adjust af parameter
	handling for __nss_hostname_digits_dots calls.
	* nss/getXXbyYY_r.c: Likewise.

	* elf/dl-load.c (_dl_map_object_from_fd): Map DSOs with MAP_DENYWRITE.
2004-05-26 06:42:16 +00:00
Ulrich Drepper
2c55cb995b Don't allow linking with _obstack. 2004-05-24 05:20:48 +00:00
Ulrich Drepper
558c29547b Update.
2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>

	* malloc/obstack.c (_obstack) [!defined _LIBC]: Remove; not used.
	Add comment explaining why libc still defines it.
2004-05-20 21:55:10 +00:00
Ulrich Drepper
893a351195 [BZ #163]
Update.
2004-05-18  Petter Reinholdtsen  <pere@hungry.com>

	* locales/sl_SI [LC_TIME]: Correct d_fmt date format from
	'22.06.2003' to '22. 06. 2003'.  Change requested from Aleks
	Reinhardt, and approved by the locale author Borka
	Jerman-Blazic. [BZ #163]
2004-05-18 20:18:14 +00:00
Ulrich Drepper
d40eb37aad [BZ #40]
Update.
2004-05-15  Petter Reinholdtsen  <pere@hungry.com>

	* locale/iso-3166.def: Remove YUGOSLAVIA and insert "SERBIA AND
	MONTENEGRO" which have taken over the code 819.  Patch from
	Danilo Segan. [BZ #40]

2004-05-15  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(SYSCALL_ERROR_HANDLER): Rename __sparc.get_pic.l7 to
	__sparc_get_pic_l7.

2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>

	* catgets/gencat.c: Update bug reporting instructions.
	* csu/version.c: Likewise.
	* debug/catchsegv.sh: Likewise.
	* debug/pcprofiledump.c: Likewise.
	* debug/xtrace.sh: Likewise.
	* elf/ldd.bash.in: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* login/programs/pt_chown.c: Likewise.
	* malloc/memusage.sh: Likewise.
	* malloc/memusagestat.c: Likewise.
	* malloc/mtrace.pl: Likewise.
	* manual/crypt.texi: Likewise.
	* manual/install.texi: Likewise.
	* nss/makedb.c: Likewise.

2004-05-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Only
	CHECK_STATIC_TLS if sym != NULL.
	* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
	* sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.

2004-05-12  Andreas Schwab  <schwab@suse.de>

	* posix/regex_internal.c (build_wcs_buffer): Also set pstr->mbs
	when translating.

2004-05-13  H.J. Lu  <hongjiu.lu@intel.com>

	* Rules (xtests): Depend on tests.
2004-05-17 18:59:35 +00:00
Ulrich Drepper
de02bd0553 Update.
2004-03-18  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (__posix_memalign): Correct alignment check.
	Reported by Don Heller <dheller@cse.psu.edu>.
2004-03-19 07:16:54 +00:00
Ulrich Drepper
aa420660e0 Update.
* malloc/malloc.c: Don't call exported interface in the implementation.
2004-03-05 11:12:46 +00:00
Ulrich Drepper
9d1e2b7dae Update.
2004-01-24  Andreas Jaeger  <aj@suse.de>

	* malloc/obstack.h: Import gnulib version.
	* malloc/obstack.c: Likewise.
2004-01-28 03:54:31 +00:00
Ulrich Drepper
8e597a18bd Update copyright year. 2004-01-01 20:42:01 +00:00
Ulrich Drepper
e796f92f68 Update.
2003-12-17  Jakub Jelinek  <jakub@redhat.com>

	* malloc/mtrace.c (tr_old_memalign_hook): New variable.
	(tr_memalignhook): New function.
	(mtrace): Register tr_memalignhook.
	(muntrace): Deregister tr_memalignhook.
	* malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
	call it directly instead of memalign_internal.

2003-12-17  Ulrich Drepper  <drepper@redhat.com>

	* misc/mntent_r.c: Change encoding to match recently change decoder.
	Patch by Alexander Achenbach <xela@slit.de>.

2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>

	* sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
	vrregset_t.

2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>

	* sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extent
	conditional to include typedef elf_vrreg_t.

2002-12-17  Paolo Bonzini  <bonzini@gnu.org>

	* posix/regexec.c (re_search_internal): Limit search to the
	beginning of the buffer if the initial states are empty for
	contexts that do not include CONTEXT_BEGBUF or, if
	!preg->newline_anchor, that do not include any one of
	CONTEXT_BEGBUF and CONTEXT_NEWLINE.
2003-12-17 23:52:56 +00:00
Ulrich Drepper
3c6904fb49 Update.
2003-09-27  Wolfram Gloger  <wg@malloc.de>

	* malloc/malloc.c: Include <malloc-machine.h> earlier instead of
	"thread-m.h", so that default parameters can be overridden in a
	system-specific malloc-machine.h.  Remove extra ; from extern "C"
	closing brace.
	* sysdeps/generic/malloc-machine.h: New file.
	* sysdeps/mach/hurd/malloc-machine.h: New file.
	* malloc/thread-m.h: Removed.
	* malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
	is in sysdeps/generic/malloc-machine.h now.

	* elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
	variables only used if TLS_TCB_AT_TP is defined into the #if
	branch.
2003-09-30 02:10:33 +00:00
Ulrich Drepper
5d78bb4334 Update.
2003-09-22  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c: Include <stdint.h>.
2003-09-23 05:47:54 +00:00
Ulrich Drepper
8dab36a119 Update.
2003-09-12  Ulrich Drepper  <drepper@redhat.com>

	* grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
	CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
	CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
	* inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
	CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
	* io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
	Likewise.
	* misc/Makefile (CFLAGS-err.c): Likewise.
	* posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
	CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
	CFLAGS-glob64.c): Likewise.
	* pwd/Makefile (CFLAGS-getpw.c): Likewise.
	* shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
	CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
	* stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
	* sunrpc/Makefile (CFLAGS-openchild.c): Likewise.

	* stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.

	* libio/stdio.h: Remove __THROW from cuserid prototype.

	* locale/loadarchive.c: Use only non-cancelable interfaces.
	* resolv/herror.c (herror): Likewise.

	* malloc/hooks.c: Before using IO stream mark stream so it uses
	only non-cancelable interfaces.
	* malloc/malloc.c: Likewise.
	* posix/getopt.c: Likewise.


2003-09-11  Jakub Jelinek  <jakub@redhat.com>

	* Makerules (LDFLAGS-c.so): Remove -u __register_frame.

2003-09-12  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/stdio_ext.h: Mark most functions with __THROW.

	* misc/err.h: Remove __THROW from all prototypes.

	* posix/getopt.h (__THROW): Define if not already defined.  Add
	__THROW to the getopt functions.

2003-09-11  Ulrich Drepper  <drepper@redhat.com>

	* io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
	(CFLAGS-fts.c): Likewise.
	* io/fcntl.h: Remove __THROW from lockf prototypes.
	* io/fts.h: Remove most __THROW.
2003-09-12 22:37:19 +00:00
Ulrich Drepper
0cb71e0261 Update.
2003-09-08  Wolfram Gloger  <wg@malloc.de>

	* malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
	contiguous case.  Bug report from Prem Gopalan
	<prem@mazunetworks.com>.
	(mALLOPt): Avoid requirement of C99.
2003-09-08 16:33:12 +00:00
Ulrich Drepper
ee8449f729 Update.
2003-09-04  Ulrich Drepper  <drepper@redhat.com>

	* libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
	* libio/fileops.c [_LIBC]: Remove close macro.
	(_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
	(_IO_new_file_open): Recognize 'c' flag in mode string.
	(_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
	(_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
	write_not_cancel.
	* iconv/gconv_conf.c: Use fopen with 'c' mode flag.
	* inet/rcmd.c: Likewise.
	* inet/ruserpass.c: Likewise.
	* intl/localealias.c: Likewise.
	* malloc/mtrace.c: Likewise.
	* misc/getpass.c: Likewise.
	* misc/getttyent.c: Likewise.
	* misc/mntent_r.c: Likewise.
	* misc/getusershell.c: Likewise.
	* nss/nsswitch.c: Likewise.
	* resolv/res_hconf.c: Likewise.
	* resolv/res_init.c: Likewise.
	* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
	* time/getdate.c: Likewise.
	* time/tzfile.c: Likewise.
	* misc/fstab.h: Undo last change.
	* misc/mntent.h: Likewise.
	* misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
	CFLAGS-fstab.c definition.

2003-09-04  Jakub Jelinek  <jakub@redhat.com>
2003-09-03  Ulrich Drepper  <drepper@redhat.com>
2003-09-04 08:27:37 +00:00
Ulrich Drepper
5dfe677810 Update.
* stdio-common/test-vfprintf.c (main): Don't write temporary file
	into source directory.
2003-08-19 20:24:45 +00:00
Ulrich Drepper
9a3a9dd8d9 Update.
* malloc/malloc.c (_int_free): Add cheap test for some invalid
	block sizes.
2003-08-19 09:30:22 +00:00
Ulrich Drepper
0f98eee519 Update.
2003-08-18  Art Haas  <ahaas@airmail.net>

	* malloc/malloc.h: Remove unneeded ';' where closing the C++
	extern block.
2003-08-18 18:13:38 +00:00
Ulrich Drepper
b5d5b67be3 Update.
2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>

	* malloc/arena.c (arena_get2): Add atomic_write_barrier.
	* malloc/thread-m.h: Include <atomic.h>.
	(atomic_full_barrier): Provide default.
	(atomic_read_barrier): Likewise.
	(atomic_write_barrier): Likewise.
	* sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
2003-07-01 08:31:38 +00:00
Ulrich Drepper
6a00759b0c Update.
* malloc/malloc.c (public_mALLINFo): Initialize malloc if it
	hasn't happened yet.

	Fix completely broken implementation.  The second parameter is of
2003-06-18 23:52:51 +00:00
Roland McGrath
862ef98272 * malloc/malloc.h [! __GNUC__] (__const): Define if undefined. 2003-05-28 21:01:52 +00:00
Ulrich Drepper
92d83c725e Update.
2003-05-08  Ulrich Drepper  <drepper@redhat.com>

	* malloc/thread-m.h: Remove special handling of thread_atfork if
	HAVE_register_atfork_malloc is defined.
2003-05-09 03:17:42 +00:00
Ulrich Drepper
a234e27dba Update.
2003-05-01  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.

2003-04-29  Andreas Schwab  <schwab@suse.de>

	* string/test-strcat.c (do_one_test): Fix attribute name.
2003-05-01 07:38:32 +00:00
Ulrich Drepper
d3290b09fb (mEMALIGn): Define alias __memalign_internal. (__posix_memalign): Use __memalign_internal instead of memalign. 2003-04-30 08:07:51 +00:00
Ulrich Drepper
7c2842bfc5 Update.
* sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.

	* malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
	* sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
	replace.
2003-04-18 00:36:59 +00:00
Ulrich Drepper
54e0138f7f Update.
2003-04-05  Ulrich Drepper  <drepper@redhat.com>

	* malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
	HAVE_register_atfork_malloc is defined use __register_atfork_malloc
	instead of __register_atfork.
2003-04-05 09:36:56 +00:00
Roland McGrath
d15851ec24 * include/atomic.h (atomic_increment_and_test): Invert sense of test.
Add comment.
	(atomic_decrement_and_test): Add comment.

2003-03-22  Jakub Jelinek  <jakub@redhat.com>

	* include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
	Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
	(atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
	__oldval variable in the macro, since it might be macro argument.
	(atomic_decrement_if_positive): Initialize __memp, remove setting
	of non-existent variable.
	(atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
	* sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
	using atomic_compare_and_exchange_val_acq.
	(atomic_decrement_if_positive, atomic_bit_test_set): Define.
	* sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
	Renamed from...
	(__arch_compare_and_exchange_bool_8_acq): ... this.
	(__arch_compare_and_exchange_val_16_acq): Renamed from...
	(__arch_compare_and_exchange_bool_16_acq): ... this.
	(__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
	from...
	(__arch_compare_and_exchange_bool_32_acq): ... this.
	(__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
	from...
	(__arch_compare_and_exchange_bool_64_acq): ... this.
	(__arch_compare_and_exchange_val_32_acq): Use __typeof for local
	variables types instead of assuming int.
	Change prefix of local variables to __arch.
	* sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
	Remove.
	(atomic_compare_and_exchange_val_acq,
	atomic_compare_and_exchange_bool_acq): Define.

	* csu/tst-atomic.c: New test.
	* csu/tst-atomic-long.c: New test.
	* csu/Makefile (tests): Add tst-atomic and tst-atomic-long.

	* malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.

	* sysdeps/s390/Versions: Add trailing newline.

	* sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
	if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
2003-03-22 23:01:01 +00:00
Ulrich Drepper
5a3ab2fc18 Update.
2003-03-21  Ulrich Drepper  <drepper@redhat.com>

	* cancellation.c: Adjust for new form of compare&exchange macros.
	* cleanup_defer.c: Likewise.
	* init.c: Likewise.
	* libc-cancellation.c: Likewise.
	* old_pthread_cond_broadcast.c: Likewise.
	* old_pthread_cond_signal.c: Likewise.
	* old_pthread_cond_timedwait.c: Likewise.
	* old_pthread_cond_wait.c: Likewise.
	* pthread_cancel.c: Likewise.
	* pthread_create.c: Likewise.
	* pthread_detach.c: Likewise.
	* pthread_join.c: Likewise.
	* pthread_key_delete.c: Likewise.
	* pthread_setcancelstate.c: Likewise.
	* pthread_setcanceltype.c: Likewise.
	* pthread_timedjoin.c: Likewise.
	* pthread_tryjoin.c: Likewise.
	* sysdeps/pthread/createthread.c: Likewise.
2003-03-21 08:03:25 +00:00
Ulrich Drepper
4009bf4044 Update.
2003-03-19  Ulrich Drepper  <drepper@redhat.com>

	* Makefile (distribute): Add include/atomic.h and bits/atomic.h.
	* include/atomic.h: New file.
	* sysdeps/i386/i486/bits/atomic.h: New file.
	* sysdeps/x86_64/bits/atomic.h: New file.
	* sysdeps/s390/bits/atomic.h: New file.
	* sysdeps/sh/bits/atomic.h: New file.
	* sysdeps/ia64/bits/atomic.h: New file.
	* sysdeps/powerpc/bits/atomic.h: New file.
	* sysdeps/generic/bits/atomic.h: New file.
	* sysdeps/i386/i486/atomicity.h: Removed.
	* sysdeps/x86_64/atomicity.h: Removed.
	* sysdeps/s390/s390-32/atomicity.h: Removed.
	* sysdeps/s390/s390-64/atomicity.h: Removed.
	* sysdeps/ia64/atomicity.h: Removed.
	* sysdeps/powerpc/powerpc32/atomicity.h: Removed.
	* sysdeps/powerpc/powerpc64/atomicity.h: Removed.
	* elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
	use of macros from atomicity.h to new names and semantics.
	* gmon_mcount.c: Likewise.
	* malloc/set-freeres.c: Likewise.
	* nscd/cache.c: Likewise.
	* stdlib/cxa_finalize.c: Likewise.
	* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.

	* sysdeps/mips/ieee754.h: New file, suitable to replace both
	* stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
2003-03-20 07:19:17 +00:00
Roland McGrath
8dd569934c 2003-03-10 Roland McGrath <roland@redhat.com>
* dlfcn/Makefile (libdl-routines): Add dladdr1.
	* dlfcn/dladdr1.c: New file.
	* dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
	[__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
	* elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
	a const ElfNN_Sym ** to fill in.
	* include/dlfcn.h: Update decl.  Include <link.h>.
	* dlfcn/dladdr.c (dladdr): Update caller.
	* malloc/mtrace.c (tr_where): Likewise.
	* sysdeps/generic/elf/backtracesyms.c: Likewise.
	* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
	* dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
	* Versions.def (libdl): Define GLIBC_2.3.3 set.
2003-03-10 09:12:11 +00:00
Roland McGrath
2a3d906e21 * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
* sunrpc/rpc_thread.c: Likewise for text_set_element use.
	(__rpc_thread_destroy): Add it to __libc_subfreeres too.

	* include/resolv.h: Add libc_hidden_proto for __res_nclose.
	* resolv/res_init.c (__res_nclose): Add libc_hidden_def.
	(res_thread_freeres): New function, on __libc_thread_subfreeres and
	__libc_subfreeres.

	* malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
	* sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
2003-02-22 01:58:06 +00:00
Roland McGrath
e8783fd53d * malloc/Versions (GLIBC_PRIVATE): Add __libc_thread_freeres.
* malloc/thread-freeres.c: New file.
	* malloc/Makefile (aux): Add it.
	* sunrpc/Versions (GLIBC_PRIVATE): Removed.
	* sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
	"__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.

	* sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
	* sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.

2003-02-21  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.

	* iconvdata/Makefile (tests): Add bug-iconv3 only if
	[$(have-thread-library) = yes].
2003-02-22 00:55:36 +00:00
Ulrich Drepper
886d5973b7 Update.
2002-10-07  Wolfram Gloger  <wg@malloc.de>

	* malloc/malloc.c (sYSMALLOc): Only check for breakage due
	to foreign sbrk()'s if arena is contiguous.  Bug report from
	Bruno Haible <bruno@clisp.org>.

2003-01-30  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/s390/libc-tls.c: Include stdlib.h.

2003-01-30  Jakub Jelinek  <jakub@redhat.com>

	* stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
	ps.__count.

2003-01-30  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
	restoring of %r6.
	* sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
	64-bit load.
	Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.

2003-01-30  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
	(allocate_static_tls): ...here.  Add __attribute_noinline__.
	Don't return on failure.
	(_dl_reloc_bad_type): Add __attribute_noinline__.
	* elf/do-rel.h (elf_dynamic_do_rel): Add
	__attribute__((always_inline)).
	* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
	elf_machine_rel_relative, elf_machine_rela_relative,
	elf_machine_lazy_rel): Add prototypes with
	__attribute__((always_inline)).

2003-01-29  David Mosberger  <davidm@hpl.hp.com>

	* elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
2003-01-30 18:41:47 +00:00
Ulrich Drepper
371a11f3d7 (mem2chunk_check): Check alignment of mem pointer, not of the computed chunk. 2003-01-27 18:32:36 +00:00
Roland McGrath
f1c5213d69 * include/fcntl.h: Declare __libc_creat.
* sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
	libhurduser-link.so-no-z-defs): New variables.

	* malloc/malloc.c: Revert last change.
	* malloc/malloc.h (_int_*): Move these decls to ...
	* include/malloc.h: ... here.  Add attribute_hidden.
	(_int_valloc): Declare it too.
2003-01-13 03:42:27 +00:00
Ulrich Drepper
2b31830acf Update.
2003-01-06  Ulrich Drepper  <drepper@redhat.com>

	* malloc/malloc.c: Makr all _int_* functions as static.
2003-01-07 02:45:24 +00:00
Roland McGrath
134f3e2424 2002-01-03 Paul Eggert <eggert@twinsun.com>
* malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
	(void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
	when compiling Bison 1.875's `bitset bset = obstack_alloc
	(bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
2003-01-04 21:42:30 +00:00
Ulrich Drepper
b0c9067d7b Update.
2003-01-02  Art Haas  <ahaas@airmail.net>

	* login/tst-utmp.c: Convert GCC extension initializer syntax to C99.

2003-01-02  Ulrich Drepper  <drepper@redhat.com>

	* posix/getconf.c: Update copyright year.
	* nss/getent.c: Likewise.
	* nscd/nscd_nischeck.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* iconv/iconv_prog.c: Likewise.
	* elf/ldconfig.c: Likewise.
	* catgets/gencat.c: Likewise.
	* csu/version.c: Likewise.
	* elf/ldd.bash.in: Likewise.
	* elf/sprof.c (print_version): Likewise.
	* locale/programs/locale.c: Likewise.
	* locale/programs/localedef.c: Likewise.
	* nscd/nscd.c (print_version): Likewise.
	* debug/xtrace.sh: Likewise.
	* malloc/memusage.sh: Likewise.
	* malloc/mtrace.pl: Likewise.

	* resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
	type to avoid strict aliasing problem.
	(_nss_dns_gethostbyname2_r): Likewise.
	* resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
	(_nss_dns_getnetbyname_r): Likewise.
2003-01-02 20:32:33 +00:00
Ulrich Drepper
ee2a5ae875 Update.
2002-12-31  Ulrich Drepper  <drepper@redhat.com>

	* string/string-inlines.c: Define __memcpy_g and __strchr_g macros
	to avoid using the exported symbols.  Define aliases with the
	original names separately.

	* include/time.h: Add libc_hidden_proto for __strftime_l.
	* include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
	* time/strftime.c: Always use libc_hidden_def if _LIBC.

	* libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
	* libio/fileops.c: Add libc_hidden_def for _IO_file_open.

	* malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
	tr_break.

	* csu/Makefile (routines): Add dso_handle.
	* csu/dso_handle.c: New file.
2002-12-31 23:13:55 +00:00
Ulrich Drepper
6d6ee629af Update.
2002-12-31  Ulrich Drepper  <drepper@redhat.com>

	* malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
	is available.

	* sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
2002-12-31 21:10:07 +00:00
Ulrich Drepper
416d2de60b Update.
2002-12-30  Ulrich Drepper  <drepper@redhat.com>

	* malloc/thread-m.h (thread_atfork): Define using __register_atfork.
2002-12-31 08:00:19 +00:00
Roland McGrath
08e49216e8 * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
_environ is NULL.
2002-12-27 00:37:06 +00:00
Ulrich Drepper
6ed5da8f48 Update.
* malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
2002-12-18 07:37:17 +00:00
Ulrich Drepper
f077a4a9f0 Update.
2002-12-17  Jakub Jelinek  <jakub@redhat.com>

	* malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
	mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
	available, otherwise __libc_maybe_call.
	* sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
	cancellation handling.
	* sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
2002-12-18 00:53:21 +00:00
Ulrich Drepper
f494b70b55 Update.
2002-12-11  Ulrich Drepper  <drepper@redhat.com>

	* malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
	definitions.  Not needed.
	[_LIBC]: Use definitions from libc-lock.h instead of referencing
	pthread routines directly.
	* malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
	mutex_init calls.
	(arena_get2): Don't look at return value of mutex_lock.
2002-12-12 01:01:43 +00:00
Ulrich Drepper
fdb933e255 (ptmalloc_unlock_all2): Don't add (void) to mutex_init calls. (arena_get2): Don't look at return value of mutex_lock. 2002-12-12 00:38:54 +00:00
Roland McGrath
fde89ad009 * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
* malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
	(malloc_starter, memalign_starter, free_starter): Don't define these.
	* malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
	Don't declare them either.
	* malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
	__pthread_initialize, so no need to set hooks to *_starter.
	(ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
	[_LIBC && SHARED && USE_TLS && !USE___THREAD]
	(__libc_malloc_pthread_startup): New function.
	* malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.

	* malloc/hooks.c (memalign_starter): New function.
	* malloc/malloc.c: Declare it.
	* malloc/arena.c (save_memalign_hook): New variable.
	(ptmalloc_init): Set __memalign_hook to memalign_starter.

	* elf/dl-minimal.c (free): Clear the memory.
	(calloc): Just call malloc, knowing all memory it returns is cleared.

	* sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
	malloc and memset; calloc can avoid the zeroing when redundant.
	(_dl_tls_setup): Likewise.
	* elf/dl-load.c (decompose_rpath): Likewise.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
	call, since memory from sbrk at startup is already zero.

	* elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
	error string for failure, null for success.  Update callers.
	* sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
	* elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2002-12-06 11:15:07 +00:00
Roland McGrath
d58847f952 2002-12-06 Roland McGrath <roland@redhat.com>
* malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
	(malloc_starter, memalign_starter, free_starter): Don't define these.
	* malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
	Don't declare them either.
	* malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
	__pthread_initialize, so no need to set hooks to *_starter.
	(ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
	[_LIBC && SHARED && USE_TLS && !USE___THREAD]
	(__libc_malloc_pthread_startup): New function.
	* malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
2002-12-06 11:11:08 +00:00
Roland McGrath
2a652f5aca 2002-11-18 Wolfram Gloger <wg@malloc.de>
* malloc/arena.c
	(ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
	nothing if not initialized.  Bug report from Marcus Brinkmann
	<Marcus.Brinkmann@ruhr-uni-bochum.de>.
2002-11-20 09:40:55 +00:00
Roland McGrath
6e3d59bc05 * scripts/abilist.awk: New file.
* Makefile (distribute): Add it.
	* Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
	(tests): Depend on .symlist file for each $(install-lib.so-versioned).
	[! subdir] (tests): Depend on libc.symlist.
	(generated): Add those files.
	* aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
	* configure: Regenerated.
	* config.make.in (OBJDUMP): New variable, substituted by configure.

	* malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
	(mallochook, reallochook): Set them up.
	(checkhdr): Check HDR->magic2 value.
	(freehook): Reset HDR->magic2.
	(memalignhook): New static function.
	(old_memalign_hook): New static variable.
	(mcheck, reallochook): Set __memalign_hook to memalignhook.
2002-11-14 03:59:56 +00:00
Roland McGrath
c877418f2e * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
New macros.
	* elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
	text_set_element.
	* elf/dl-libc.c (free_mem): Likewise.
	* iconv/gconv_conf.c (free_mem): Likewise.
	* iconv/gconv_db.c (free_mem): Likewise.
	* iconv/gconv_dl.c (free_mem): Likewise.
	* iconv/gconv_cache.c (free_mem): Likewise.
	* intl/finddomain.c (free_mem): Likewise.
	* intl/dcigettext.c (free_mem): Likewise.
	* locale/setlocale.c (free_mem): Likewise.
	* misc/fstab.c (fstab_free): Likewise.
	* nss/nsswitch.c (free_mem): Likewise.
	* posix/regcomp.c (free_mem): Likewise.
	* resolv/gai_misc.c (free_res): Likewise.
	* stdlib/fmtmsg.c (free_mem): Likewise.
	* sunrpc/clnt_perr.c (free_mem): Likewise.
	* sysdeps/generic/setenv.c (free_mem): Likewise.
	* sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
	* sysdeps/pthread/aio_misc.c (free_res): Likewise.
	* time/tzset.c (free_mem): Likewise.
	* malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
	* locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
	* malloc/set-freeres.c (__libc_freeres): Likewise.

	* login/getutent.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutent): Allocate buffer the first time it is run.
	* login/getutid.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutid): Allocate buffer the first time it is run.
	* login/getutline.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutline): Allocate buffer the first time it is run.
	* malloc/mtrace.c (malloc_trace_buffer): Change into char *.
	(mtrace): Allocate malloc_trace_buffer.
	* resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
	* resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
	* string/strerror.c: Include libintl.h and errno.h.
	(buf): New variable.
	(strerror): Only allocate buffer if actually needed (unknown error).
	* time/tzfile.c (transitions): Add libc_freeres_ptr.
	(freeres): Remove.

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

	* include/libc-symbols.h (libc_freeres_ptr): New macro.
	* malloc/set-freeres.c (__libc_freeres_ptrs): Define using
	symbol_set_define.
	(__libc_freeres): Free all pointers in that section.
	* Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
	commands when creating .lds script.
	(LDSEDCMD-c.so): New variable.
	* inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rcmd_af): Use strdup to allocate ahostbuf.
	* inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rexec_af): Use strdup to allocate ahostbuf.
	* stdio-common/reg-printf.c (printf_funcs): Remove.
	(__printf_arginfo_table): Change into printf_arginfo_function **.
	Add libc_freeres_ptr.
	(__register_printf_function): Allocate __printf_arginfo_table
	and __printf_function_table the first time it is called.
	* stdio-common/printf-parse.h (__printf_arginfo_table): Change into
	printf_arginfo_function **.
	(parse_one_spec): Add __builtin_expect.
	* grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
	(string_space, map): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
	(buffer): Add libc_freeres_ptr.
	(free_mem): Remove for _LIBC.
	* nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* nss/getXXent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
	(free_mem): Remove.
	* shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
	libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
	libc_freeres_ptr.
	(free_mem): Remove.

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

	* malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
	instead of duplicating the whole function in libc.
2002-11-01 20:44:15 +00:00
Roland McGrath
57449fa348 * malloc/malloc.c [! MALLOC_DEBUG] (assert): #undef before defining.
* sysdeps/mach/hurd/Versions (ld: GLIBC_2.2.6): Add __errno_location.
2002-09-29 22:53:29 +00:00
Roland McGrath
c843e065a1 * malloc/Makefile ($(objpfx)memusagestat.o: sysincludes): Define
file-specific variable override so it compiles properly when using
	--with-headers.

	* NEWS: Added item for powerpc64-linux port.

	* include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
	(C_SYMBOL_DOT_NAME): Insure that C_SYMBOL_DOT_NAME works for
	various gcc versions.  Dot names required for powerpc64.
	[HAVE_ASM_GLOBAL_DOT_NAME] (_weak_extern): Add .weakext '.'ed symbol.
	[HAVE_ASM_GLOBAL_DOT_NAME] (strong_alias): Add .global
	C_SYMBOL_DOT_NAME(alias).
	[HAVE_ASM_GLOBAL_DOT_NAME] (strong_data_alias): New macro. Same as
	original strong_alias macro.
	[HAVE_ASM_GLOBAL_DOT_NAME] (weak_alias): Add .weakext/.weak
	C_SYMBOL_DOT_NAME(alias).
	[HAVE_ASM_GLOBAL_DOT_NAME] (_symbol_version): Add .symver '.'ed name.
	[HAVE_ASM_GLOBAL_DOT_NAME] (_default_symbol_version): Add .symver
	'.'ed name.
	Add comments on libc_hidden_data_def and libc_hidden_data_weak usage.
	[HAVE_ASM_GLOBAL_DOT_NAME] (hidden_dot_def1): New macro.  Generate
	.global C_SYMBOL_DOT_NAME(alias).  Otherwise an empty macro.
	(hidden_def): Append hidden_dot_def1 macro to definition.
	(hidden_ver): Append hidden_dot_def1 macro to definition.
	(hidden_data_def): New macro.  Same as original hidden_def macro.
	(hidden_data_ver): New macro.  Same as original hidden_ver macro.
	[HAVE_ASM_GLOBAL_DOT_NAME] (hidden_dot_weak1): New macro.  Generate
	.weakext C_SYMBOL_DOT_NAME(alias).  Otherwise an empty macro.
	(hidden_weak): Append hidden_dot_weak1 macro to definition.
	(hidden_data_weak): New macro.  Same as original hidden_weak macro.
	[HAVE_ASM_GLOBAL_DOT_NAME] (HIDDEN_JUMPTARGET): Define as .__GI_name.
	Otherwise defined as __GI_name.
	(libc_hidden_data_def): New macro.  Use hidden_data_def.
	(libc_hidden_data_weak): New macro.  Use hidden_data_weak.
	(libc_hidden_data_ver): New macro.  Use hidden_data_ver.
	(rtld_hidden_data_def): New macro.  Use hidden_data_def.
	(rtld_hidden_data_weak): New macro.  Use hidden_data_weak.
	(rtld_hidden_data_ver): New macro.  Use hidden_data_ver.
	(libm_hidden_data_def): New macro.  Use hidden_data_def.
	(libm_hidden_data_weak): New macro.  Use hidden_data_weak.
	(libm_hidden_data_ver): New macro.  Use hidden_data_ver.
	* inet/in6_addr.c: Replace libc_hidden_def with libc_hidden_data_def.
2002-09-18 00:15:25 +00:00
Roland McGrath
cc7375ce02 2002-08-26 Brian Youmans <3diff@gnu.org>
* crypt/crypt.c: Changed copying permission notice to Lesser GPL
        from Library GPL.
        * crypt/crypt_util.c: Likewise.
        * crypt/ufc.c: Likewise.
        * elf/dl-conflict.c: Likewise.
        * elf/dl-iteratephdr.c: Likewise.
        * iconv/iconvconfig.h: Likewise.
        * linuxthreads/Examples/ex10.c: Likewise.
        * linuxthreads/Examples/ex11.c: Likewise.
        * linuxthreads/Examples/ex13.c: Likewise.
        * linuxthreads/Examples/ex8.c: Likewise.
        * linuxthreads/Examples/ex9.c: Likewise.
        * linuxthreads/barrier.c: Likewise.
        * linuxthreads/events.c: Likewise.
        * linuxthreads/lockfile.c: Likewise.
        * linuxthreads/no-tsd.c: Likewise.
        * linuxthreads/pt-machine.c: Likewise.
        * linuxthreads/ptclock_gettime.c: Likewise.
        * linuxthreads/ptclock_settime.c: Likewise.
        * linuxthreads/rwlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/arm/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/arm/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/cris/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/cris/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/hppa/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/hppa/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/i686/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/i386/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/useldt.h: Likewise.
        * linuxthreads/sysdeps/ia64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/ia64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/m68k/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/m68k/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/mips/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/mips/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/powerpc/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/powerpc/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-tsd.h: Likewise.
        * linuxthreads/sysdeps/pthread/getcpuclockid.c: Likewise.
        * linuxthreads/sysdeps/pthread/posix-timer.h: Likewise.
        * linuxthreads/sysdeps/pthread/timer_create.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_delete.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_getoverr.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_gettime.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_routines.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_settime.c: Likewise.
        * linuxthreads/sysdeps/pthread/tst-timer.c: Likewise.
        * linuxthreads/sysdeps/s390/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/s390/s390-32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/s390/s390-64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sh/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sh/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/sparcv9/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/hppa/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
        * linuxthreads/tststack.c: Likewise.
        * linuxthreads/unload.c: Likewise.
        * linuxthreads/weaks.c: Likewise.
        * linuxthreads/wrapsyscall.c: Likewise.
        * malloc/arena.c: Likewise.
        * malloc/hooks.c: Likewise.
        * malloc/malloc.c: Likewise.
        * posix/glob/Makefile.ami: Likewise.
        * posix/glob/Makefile.in: Likewise.
        * stdlib/gmp-impl.h: Likewise.
        * stdlib/gmp.h: Likewise.
        * sysdeps/generic/dl-iteratephdr-static.c: Likewise.
        * sysdeps/generic/strnlen.c: Likewise.
        * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
        * sysdeps/mach/hurd/recvmsg.c: Likewise.
        * sysdeps/mach/hurd/sendmsg.c: Likewise.
        * sysdeps/mach/hurd/spawni.c: Likewise.
        * sysdeps/mach/powerpc/machine-sp.h: Likewise.
        * sysdeps/mach/powerpc/sysdep.h: Likewise.
        * sysdeps/mach/powerpc/thread_state.h: Likewise.
        * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
        * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: Likewise.
        * sysdeps/x86_64/gmp-mparam.h: Likewise.
2002-08-26 22:40:48 +00:00
Ulrich Drepper
6dd67bd565 Update.
2002-08-24  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/charmap.c (charmap_new_char): Don't use
	ULONG_MAX as maximum UCS4 value.

	* sysdeps/unix/sysv/linux/ia64/sys/user.h: New file.

	* sysdeps/generic/strtol.c: We don't need the isascii test in glibc.

	* malloc/hooks.c (public_sET_STATe): use size_t as type for i.
	* malloc/malloc.c (mALLINFo): Likewise.

	* libio/wstrops.c (_IO_wstr_pbackfail): Use WEOF in comparison.

	* libio/wfileops.c (_IO_wfile_overflow): Use EOF not WEOF when
	examining result of _IO_do_flush call.

	* stdio-common/vfprintf.c (vfprintf): Use correct type in va_arg.
	Use prec not spec when sizing buffers.

	* catgets/open_catalog.c (__open_catalog): Add casts to avoid warnings.
	* locale/loadarchive.c (_nl_load_locale_from_archive): Likewise.
	* locale/loadlocale.c (_nl_intern_locale_data): Likewise.
	* stdio-common/vfscanf.c (inchar): Likewise.
	* misc/efgcvt_r.c (fcvt_r): Likewise.
	* elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
	* elf/readlib.c (process_file): Likewise.
	* elf/sprof.c (load_profdata): Likewise.
	* sysdeps/ia64/hp-timing.h (HP_TIMING_PRINT): Likewise.
	* locale/programs/linereader.c (get_toplvl_escape): Likewise.
	* locale/programs/charmap.c (charmap_read): Likewise.
	* libio/fileops.c: Likewise.
	* libio/fmemopen.c: Likewise.
	* stdlib/strtod.c: Likewise.
	* elf/dl-load.c: Likewise.
	* iconv/iconvconfig.c: Likewise.
	* iconv/iconv_prog.c (process_block): Likewise.

	* sysdeps/unix/sysv/linux/ia64/Makefile: Define _ASM_IA64_CURRENT_H
	macro to calm down the compiler.

	* iconv/gconv_cache.c (__gconv_load_cache): Add cast to avoid warning.

	* sysdeps/ia64/elf/initfini.c: Don't use newlines embedded in string.

	* sysdeps/unix/sysv/linux/i386/sysdep.S: Update comment regarding
	placement of errno definition.
	* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/mips/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.

	* resolv/nss_dns/dns-host.c (MAXPACKET): Increase minimum value
	from 1024 to 65536, to avoid buffer overrun.

2002-08-16  Paul Eggert  <eggert@twinsun.com>

	* resolv/gethnamaddr.c (MAXPACKET): Increase minimum value
	from 1024 to 65536, to avoid buffer overrun.
	* resolv/res_query.c (MAXPACKET): Likewise.

	architectures.
2002-08-25 04:51:08 +00:00