From 11bf311edc76f5ddc469a8c396e313e82d76be15 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 11 Jan 2007 21:51:07 +0000 Subject: [BZ #2510, BZ #2830, BZ #3137, BZ #3313, BZ #3426, BZ #3465, BZ #3480, BZ #3483, BZ #3493, BZ #3514, BZ #3515, BZ #3664, BZ #3673, BZ #3674] 2007-01-11 Jakub Jelinek * sysdeps/i386/soft-fp/sfp-machine.h: Remove. * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise. 2007-01-10 Ulrich Drepper * io/fts.c: Make sure fts_cur is always valid after return from fts_read. Patch by Miloslav Trmac . 2006-10-27 Richard Sandiford * elf/elf.h (R_MIPS_GLOB_DAT): Define. (R_MIPS_NUM): Bump by 1. 2007-01-03 Jakub Jelinek * posix/execvp.c: Include alloca.h. (allocate_scripts_argv): Renamed to... (scripts_argv): ... this. Don't allocate buffer here nor count arguments. (execvp): Use alloca if possible. * posix/Makefile: Add rules to build and run tst-vfork3 test. * posix/tst-vfork3.c: New test. * stdlib/Makefile (tst-strtod3-ENV): Define. 2007-01-02 Ulrich Drepper * posix/getconf.c: Update copyright year. * nss/getent.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. 2006-12-24 Ulrich Drepper * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment attempts. 2006-12-23 Ulrich Drepper * posix/wordexp.c: Remove some unnecessary tests. 2006-12-20 SUGIOKA Toshinobu * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file. * nss/getXXbyYY_r.c: Include atomic.h. (INTERNAL (REENTRANT_NAME)): Write startp after start_fct, add atomic_write_barrier () in between. 2006-11-28 Jakub Jelinek * elf/dl-support.c: Include dl-procinfo.h. * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4, PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS, PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X): Define. (_dl_string_platform): Use PPC_PLATFORM_* macros instead of hardcoded constants. * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use PPC_PLATFORM_* macros for array designators. 2006-11-11 Steven Munroe * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap names to the beginning. (_dl_powerpc_platforms): Add "power6x". * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease. (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP. (_DL_PLATFORMS_COUNT): Increase. (_dl_string_platform): Handle power6x case. * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP, PPC_FEATURE_POWER6_EXT): Define. (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment. [-2^31 .. 2^31) range. * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME. * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags): Handle relatime mount option. 2006-12-13 Jakub Jelinek * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include kernel-features.h. 2006-12-11 Ulrich Drepper * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand separators also if no non-zero digits found. * stdlib/Makefile (tests): Add tst-strtod3. [BZ #3664] * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize empty parsed strings. * stdlib/Makefile (tests): Add tst-strtod2. * stdlib/tst-strtod2.c: New file. [BZ #3673] * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit computation. * stdlib/Makefile (tests): Add tst-atof2. * stdlib/tst-atof2.c: New file. [BZ #3674] * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value correctly if removing trailing zero of hex-float. * stdlib/Makefile (tests): Add tst-atof1. * stdlib/tst-atof1.c: New file. * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest. Start searching for next comma at p rather than rest. * misc/Makefile (tests): Add tst-mntent2. * misc/tst-mntent2.c: New test. 2006-12-08 Ulrich Drepper * 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-05 Jakub Jelinek * nis/nis_subr.c (nis_getnames): Revert last change. 2006-12-03 Kaz Kojima * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed. 2006-11-30 H.J. Lu * sysdeps/i386/i686/memcmp.S: Use jump table as the base of jump table entries. 2006-11-30 Jan Kratochvil * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost `clone' function to ensure proper unwinding stop of gdb. * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise. 2006-12-01 Ulrich Drepper * nscd/nscd.init: Remove obsolete and commented-out -S option handling. 2006-11-23 Jakub Jelinek [BZ #3514] * manual/string.texi (strncmp): Fix pastos from wcscmp description. [BZ #3515] * manual/string.texi (strtok): Remove duplicate paragraph. 2006-12-01 Jan Kratochvil * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with libgcc not supporting `rflags' unwinding (register # >= 17). 2006-11-30 Jakub Jelinek * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc succeeded. 2006-11-29 Daniel Jacobowitz Jakub Jelinek Jan Kratochvil * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct unwind information. * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for 'restore_rt' even in the 'signal' directory. * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list. malloc crashed. Don't allocate memory unnecessarily in each loop. 2006-10-21 Jakub Jelinek * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change. 2006-11-20 Ulrich Drepper * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit. 2006-11-18 Bruno Haible * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke __sysconf only after having tried to call getgroups32. 2006-11-19 Ulrich Drepper * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style addresses for IPv4 queries if they can be mapped. 2006-11-16 Jakub Jelinek * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text. * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise. (signmask): Add .size directive. (othermask): Add .type directive. 2006-11-14 Ulrich Drepper * po/nl.po: Update from translation team. * timezone/zdump.c: Redo fix for BZ #3137. 2006-11-14 Jakub Jelinek * nss/nss_files/files-alias.c (get_next_alias): Set line back to first_unused after parsing :include: file. * timezone/africa: Update from tzdata2006o. * timezone/antarctica: Likewise. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/backward: Likewise. * timezone/europe: Likewise. * timezone/iso3166.tab: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/zone.tab: Likewise. * time/tzfile.c (__tzfile_read): Extend to handle new file format on machines with 64-bit time_t. * timezone/checktab.awk: Update from tzcode2006o. * timezone/ialloc.c: Likewise. * timezone/private.h: Likewise. * timezone/scheck.c: Likewise. * timezone/tzfile.h: Likewise. * timezone/tzselect.ksh: Likewise. * timezone/zdump.c: Likewise. * timezone/zic.c: Likewise. [BZ #3483] * elf/ldconfig.c (main): Call setlocale and textdomain. Patch mostly by Benno Schulenberg . [BZ #3480] * manual/argp.texi: Fix typos. * manual/charset.texi: Likewise. * manual/errno.texi: Likewise. * manual/filesys.texi: Likewise. * manual/lang.texi: Likewise. * manual/maint.texi: Likewise. * manual/memory.texi: Likewise. * manual/message.texi: Likewise. * manual/resource.texi: Likewise. * manual/search.texi: Likewise. * manual/signal.texi: Likewise. * manual/startup.texi: Likewise. * manual/stdio.texi: Likewise. * manual/sysinfo.texi: Likewise. * manual/syslog.texi: Likewise. * manual/time.texi: Likewise. Patch by Ralf Wildenhues . [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 . 2006-11-10 Jakub Jelinek * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization if N is one bigger than return value. * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1 and l1 last arguments, if buf is defined, verify the return value equals to strlen (buf) and verify no byte beyond passed length is modified. 2006-11-10 Ulrich Drepper * po/sv.po: Update from translation team. * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev): Use __new_sys_siglist instead of _sys_siglist_internal as second macro argument. (_old_sys_siglist): Use declare_symbol_alias macro instead of strong_alias. 2006-11-09 Ulrich Drepper [BZ #3493] * posix/unistd.h (sysconf): Remove const attribute. * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for temporary or deprecated addresses. Patch by Sridhar Samudrala . * string/Makefile (tests): Add tst-strxfrm2. * string/tst-strxfrm2.c: New file. 2006-10-09 Jakub Jelinek * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0 rather than r->r_brk. * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal optimization even if needed > n. 2006-11-07 Jakub Jelinek * include/libc-symbols.h (declare_symbol): Rename to... (declare_symbol_alias): ... this. Add ORIGINAL argument, imply strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes .size directive. * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias changes. * sysdeps/gnu/siglist.c: Likewise. 2006-11-03 Steven Munroe * sysdeps/powerpc/fpu/bits/mathinline.h [__LIBC_INTERNAL_MATH_INLINES]: Moved to ... * sysdeps/powerpc/fpu/math_private.h: ...here. New file. 2006-11-05 Ulrich Drepper * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Update handling of cache descriptor 0x49 for new models. * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Likewise. 2006-11-02 Ulrich Drepper * configure.in: Work around ld --help change and avoid -z relro test completely if the architecture doesn't care about security. 2006-11-01 Ulrich Drepper * po/sv.po: Update from translation team. 2006-10-31 Ulrich Drepper * stdlib/atexit.c (atexit): Don't mark as hidden when used to generate compatibility version. 2006-10-29 Ulrich Drepper * configure.in: Relax -z relro requirement a bit. * po/sv.po: Update from translation team. 2006-10-29 Jakub Jelinek * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P. * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise. * elf/dl-close.c (_dl_close_worker): Likewise. * elf/dl-open.c (_dl_open_worker): Likewise. * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define. * configure.in: Require assembler support for visibility, compiler support for visibility and aliases, linker support for various -z options. * Makeconfig: Remove conditional code which now is unnecessary. * config.h.in: Likewise. * config.make.in: Likewise. * dlfcn/Makefile: Likewise. * elf/Makefile: Likewise. * elf/dl-load.c: Likewise. * elf/rtld.c: Likewise. * include/libc-symbols.h: Likewise. * include/stdio.h: Likewise. * io/Makefile: Likewise. * io/fstat.c: Likewise. * io/fstat64.c: Likewise. * io/fstatat.c: Likewise. * io/fstatat64.c: Likewise. * io/lstat.c: Likewise. * io/lstat64.c: Likewise. * io/mknod.c: Likewise. * io/mknodat.c: Likewise. * io/stat.c: Likewise. * io/stat64.c: Likewise. * libio/stdio.c: Likewise. * nscd/Makefile: Likewise. * stdlib/Makefile: Likewise. * stdlib/atexit.c: Likewise. * sysdeps/generic/ldsodefs.h: Likewise. * sysdeps/i386/dl-machine.h: Likewise. * sysdeps/i386/sysdep.h: Likewise. * sysdeps/i386/i686/memcmp.S: Likewise. * sysdeps/powerpc/powerpc32/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise. * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise. * Makerules: USE_TLS support is now default. * tls.make.c: Likewise. * 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. [BZ #3426] * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to reality. 2006-10-27 Jakub Jelinek * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope argument. (_dl_lookup_symbol_x): Adjust caller. * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove _ns_global_scope. * elf/rtld.c (dl_main): Don't initialize _ns_global_scope. * elf/dl-libc.c: Revert l_scope name changes. * elf/dl-load.c: Likewise. * elf/dl-object.c: Likewise. * elf/rtld.c: Likewise. * elf/dl-close.c (_dl_close): Likewise. * elf/dl-open.c (dl_open_worker): Likewise. If not SINGLE_THREAD_P, always use __rtld_mrlock_{change,done}. Always free old scope list here if not l_scope_mem. * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name change. Never free scope list here. Just __rtld_mrlock_lock before the lookup and __rtld_mrlock_unlock it after the lookup. * elf/dl-sym.c: Likewise. * include/link.h (struct r_scoperec): Remove. (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem with l_scope_mem and l_scoperec_lock with l_scope_lock. 2006-10-25 Ulrich Drepper * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION. 2006-10-18 Ulrich Drepper * configure.in: Disable building profile libraries by default. 2006-10-18 Ulrich Drepper * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to _dl_lookup_symbol_x code. 2006-10-17 Jakub Jelinek * 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 [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 * 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 * include/atomic.h: Add a unique prefix to all local variables in macros. * csu/tst-atomic.c (do_test): Test also catomic_* macros. 2006-10-14 Ulrich Drepper * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated. [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. * libio/stdio.h: Add more __wur attributes. 2006-11-12 Andreas Jaeger [BZ #2510] * manual/search.texi (Hash Search Function): Clarify. (Array Search Function): Clarify. 2006-11-12 Joseph Myers [BZ #2830] * math/atest-exp.c (main): Cast hex value to mp_limb_t before shifting. * math/atest-exp2.c (read_mpn_hex): Likewise. * math/atest-sincos.c (main): Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait. * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait. * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for version GLIBC_2.6. * Versions.def: Add GLIBC_2.6 for libc. * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support. 2006-10-11 Jakub Jelinek * 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 Ulrich Drepper * 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-10 Roland McGrath * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast. * sysdeps/mach/hurd/futimes.c: Likewise. * sysdeps/mach/hurd/lutimes.c: Likewise. 2006-10-09 Ulrich Drepper Jakub Jelinek Implement reference counting of scope records. * elf/dl-close.c (_dl_close): Remove all scopes from removed objects from the list in objects which remain. Always allocate new scope record. * elf/dl-open.c (dl_open_worker): When growing array for scopes, don't resize, allocate a new one. * elf/dl-runtime.c: Update reference counters before using a scope array. * elf/dl-sym.c: Likewise. * elf/dl-libc.c: Adjust for l_scope name change. * elf/dl-load.c: Likewise. * elf/dl-object.c: Likewise. * elf/rtld.c: Likewise. * include/link.h: Include . Define struct r_scoperec. Replace r_scope with pointer to r_scoperec structure. Add l_scoperec_lock. * sysdeps/generic/ldsodefs.h: Include . * sysdeps/generic/rtld-lowlevel.h: New file. * include/atomic.h: Rename atomic_and to atomic_and_val and atomic_or to atomic_or_val. Define new macros atomic_and and atomic_or which do not return values. * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or. Various cleanups. * sysdeps/i386/i486/bits/atomic.h: Likewise. * po/sv.po: Update from translation team. 2006-10-07 Ulrich Drepper * Versions.def: Add GLIBC_2.6 to libpthread. * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use. (versioned_symbol): Likewise. (compat_symbol): Likewise. * po/tr.po: Update from translation team. * nis/Banner: Removed. It's been integral part forever and the author info is incomplete anyway. * libio/Banner: Likewise. 2006-10-06 Ulrich Drepper * version.h (VERSION): Bump to 2.5.90 for new development tree. --- manual/argp.texi | 2 +- manual/charset.texi | 6 +++--- manual/conf.texi | 5 ----- manual/errno.texi | 4 ++-- manual/filesys.texi | 10 +++++----- manual/lang.texi | 2 +- manual/maint.texi | 2 +- manual/memory.texi | 8 ++++---- manual/message.texi | 4 ++-- manual/resource.texi | 10 +++++----- manual/search.texi | 18 +++++++++--------- manual/signal.texi | 2 +- manual/startup.texi | 2 +- manual/stdio.texi | 4 ++-- manual/string.texi | 9 ++------- manual/sysinfo.texi | 2 +- manual/syslog.texi | 2 +- manual/time.texi | 8 ++++---- 18 files changed, 45 insertions(+), 55 deletions(-) (limited to 'manual') diff --git a/manual/argp.texi b/manual/argp.texi index 090d49f..b372323 100644 --- a/manual/argp.texi +++ b/manual/argp.texi @@ -832,7 +832,7 @@ Don't exit on errors, although they may still result in error messages. @item ARGP_LONG_ONLY Use the gnu getopt `long-only' rules for parsing arguments. This allows long-options to be recognized with only a single @samp{-} -(i.e. @samp{-help}). This results in a less useful interface, and its +(i.e., @samp{-help}). This results in a less useful interface, and its use is discouraged as it conflicts with the way most GNU programs work as well as the GNU coding standards. diff --git a/manual/charset.texi b/manual/charset.texi index 5063246..8b2c09c 100644 --- a/manual/charset.texi +++ b/manual/charset.texi @@ -207,7 +207,7 @@ and transmittal. Because each single wide character consists of more than one byte, they are effected by byte-ordering. Thus, machines with different endianesses would see different values when accessing the same data. This byte ordering concern also applies for communication protocols -that are all byte-based and, thereforet require that the sender has to +that are all byte-based and therefore require that the sender has to decide about splitting the wide character in bytes. A last (but not least important) point is that wide characters often require more storage space than a customized byte-oriented character set. @@ -737,7 +737,7 @@ the return value is @math{0}. If the next @var{n} bytes form a valid multibyte character, the number of bytes belonging to this multibyte character byte sequence is returned. -If the the first @var{n} bytes possibly form a valid multibyte +If the first @var{n} bytes possibly form a valid multibyte character but the character is incomplete, the return value is @code{(size_t) -2}. Otherwise the multibyte character sequence is invalid and the return value is @code{(size_t) -1}. @@ -2231,7 +2231,7 @@ ordering of the processor (or at least the running process) is not the same as the one required for UCS-4. This is done for performance reasons as one does not want to perform unnecessary byte-swapping operations if one is not interested in actually seeing the result in UCS-4. To avoid -trouble with endianess, the internal representation consistently is named +trouble with endianness, the internal representation consistently is named @code{INTERNAL} even on big-endian systems where the representations are identical. diff --git a/manual/conf.texi b/manual/conf.texi index ef00db6..605e305 100644 --- a/manual/conf.texi +++ b/manual/conf.texi @@ -1455,11 +1455,6 @@ Inquire about the value of @code{_POSIX_ASYNC_IO}. Inquire about the value of @code{_POSIX_PRIO_IO}. @comment unistd.h -@comment POSIX.1g -@item _PC_SOCK_MAXBUF -Inquire about the value of @code{_POSIX_PIPE_BUF}. - -@comment unistd.h @comment LFS @item _PC_FILESIZEBITS Inquire about the availability of large files on the filesystem. diff --git a/manual/errno.texi b/manual/errno.texi index e230506..dd9f861 100644 --- a/manual/errno.texi +++ b/manual/errno.texi @@ -1434,7 +1434,7 @@ like those given to the @code{printf} family of functions. The arguments required for the format can follow the @var{format} parameter. Just like @code{perror}, @code{error} also can report an error code in textual form. But unlike @code{perror} the error value is explicitly -passed to the function in the @var{errnum} parameter. This elimintates +passed to the function in the @var{errnum} parameter. This eliminates the problem mentioned above that the error reporting function must be called immediately after the function causing the error since otherwise @code{errno} might have a different value. @@ -1479,7 +1479,7 @@ in an input file (like a programming language source code file etc). If the global variable @code{error_one_per_line} is set to a non-zero value @code{error_at_line} will avoid printing consecutive messages for -the same file anem line. Repetition which are not directly following +the same file and line. Repetition which are not directly following each other are not caught. Just like @code{error} this function only returned if @var{status} is diff --git a/manual/filesys.texi b/manual/filesys.texi index 2436f22..9719d41 100644 --- a/manual/filesys.texi +++ b/manual/filesys.texi @@ -131,7 +131,7 @@ this function is deprecated. @comment GNU @deftypefun {char *} get_current_dir_name (void) @vindex PWD -This @code{get_current_dir_name} function is bascially equivalent to +This @code{get_current_dir_name} function is basically equivalent to @w{@code{getcwd (NULL, 0)}}. The only difference is that the value of the @code{PWD} variable is returned if this value is correct. This is a subtle difference which is visible if the path described by the @@ -917,7 +917,7 @@ function returns a value other than @math{0} this value is returned as the return value of @code{ftw}. When the sources are compiled with @code{_FILE_OFFSET_BITS == 64} on a -32-bit system this function is in fact @code{ftw64}, i.e. the LFS +32-bit system this function is in fact @code{ftw64}, i.e., the LFS interface transparently replaces the old interface. @end deftypefun @@ -990,7 +990,7 @@ accordingly. If the return value of a callback invocation was non-zero then that value is returned. When the sources are compiled with @code{_FILE_OFFSET_BITS == 64} on a -32-bit system this function is in fact @code{nftw64}, i.e. the LFS +32-bit system this function is in fact @code{nftw64}, i.e., the LFS interface transparently replaces the old interface. @end deftypefun @@ -1434,7 +1434,7 @@ the existing directory named @var{newname} is deleted first. The name One useful feature of @code{rename} is that the meaning of @var{newname} changes ``atomically'' from any previously existing file by that name to -its new meaning (i.e. the file that was called @var{oldname}). There is +its new meaning (i.e., the file that was called @var{oldname}). There is no instant at which @var{newname} is non-existent ``in between'' the old meaning and the new meaning. If there is a system crash during the operation, it is possible for both names to still exist; but @@ -3104,7 +3104,7 @@ terminates abnormally). This function is reentrant. When the sources are compiled with @code{_FILE_OFFSET_BITS == 64} on a -32-bit system this function is in fact @code{tmpfile64}, i.e. the LFS +32-bit system this function is in fact @code{tmpfile64}, i.e., the LFS interface transparently replaces the old interface. @end deftypefun diff --git a/manual/lang.texi b/manual/lang.texi index 96f6d9d..82c5e96 100644 --- a/manual/lang.texi +++ b/manual/lang.texi @@ -1274,7 +1274,7 @@ type of a particular structure member. @comment ISO @deftypefn {Macro} size_t offsetof (@var{type}, @var{member}) This expands to a integer constant expression that is the offset of the -structure member named @var{member} in a the structure type @var{type}. +structure member named @var{member} in the structure type @var{type}. For example, @code{offsetof (struct s, elem)} is the offset, in bytes, of the member @code{elem} in a @code{struct s}. diff --git a/manual/maint.texi b/manual/maint.texi index 2b92212..567db98 100644 --- a/manual/maint.texi +++ b/manual/maint.texi @@ -156,7 +156,7 @@ subdirectories under it intended to be new specific categories. to look for a system-dependent version of a file that's not in @file{generic}. This means that any system-dependent source file must have an analogue in @file{generic}, even if the routines defined by that -file are not implemented on other platforms. Second. the @file{generic} +file are not implemented on other platforms. Second, the @file{generic} version of a system-dependent file is used if the makefiles do not find a version specific to the system you're compiling for. diff --git a/manual/memory.texi b/manual/memory.texi index 91b9d84..cbe147b 100644 --- a/manual/memory.texi +++ b/manual/memory.texi @@ -31,7 +31,7 @@ One of the most basic resources a process has available to it is memory. There are a lot of different ways systems organize memory, but in a typical one, each process has one linear virtual address space, with addresses running from zero to some huge maximum. It need not be -contiguous; i.e. not all of these addresses actually can be used to +contiguous; i.e., not all of these addresses actually can be used to store data. The virtual memory is divided into pages (4 kilobytes is typical). @@ -1065,7 +1065,7 @@ This is the total size of memory occupied by free (not in use) chunks. @item int keepcost This is the size of the top-most releasable chunk that normally -borders the end of the heap (i.e. the high end of the virtual address +borders the end of the heap (i.e., the high end of the virtual address space's data segment). @end table @@ -2407,7 +2407,7 @@ of the data segment is. @cindex paging You can tell the system to associate a particular virtual memory page -with a real page frame and keep it that way --- i.e. cause the page to +with a real page frame and keep it that way --- i.e., cause the page to be paged in if it isn't already and mark it so it will never be paged out and consequently will never cause a page fault. This is called @dfn{locking} a page. @@ -2467,7 +2467,7 @@ A memory lock is associated with a virtual page, not a real frame. The paging rule is: If a frame backs at least one locked page, don't page it out. -Memory locks do not stack. I.e. you can't lock a particular page twice +Memory locks do not stack. I.e., you can't lock a particular page twice so that it has to be unlocked twice before it is truly unlocked. It is either locked or it isn't. diff --git a/manual/message.texi b/manual/message.texi index 1507a6d..e772b2d 100644 --- a/manual/message.texi +++ b/manual/message.texi @@ -1810,8 +1810,8 @@ help to understand the input better. Other programs help to manage development cycle when new messages appear in the source files or when a new translation of the messages appear. -here it should only be noted that using all the tools in GNU gettext it -is possible to @emph{completely} automize the handling of message +Here it should only be noted that using all the tools in GNU gettext it +is possible to @emph{completely} automate the handling of message catalog. Beside marking the translatable string in the source code and generating the translations the developers do not have anything to do themselves. diff --git a/manual/resource.texi b/manual/resource.texi index df77408..aabd289 100644 --- a/manual/resource.texi +++ b/manual/resource.texi @@ -584,7 +584,7 @@ to}, but doesn't @emph{need to} run occupies the CPU. @cindex preemptive scheduling When two processes are in contention to use the CPU at any instant, the one with the higher absolute priority always gets it. This is true even if the -process with the lower priority is already using the CPU (i.e. the +process with the lower priority is already using the CPU (i.e., the scheduling is preemptive). Of course, we're only talking about processes that are running or ``ready to run,'' which means they are ready to execute instructions right now. When a process blocks to wait @@ -819,7 +819,7 @@ existing policy is not @code{SCHED_OTHER}. @item The calling process does not have @code{CAP_SYS_NICE} permission and its -owner is not the target process' owner. I.e. the effective uid of the +owner is not the target process' owner. I.e., the effective uid of the calling process is neither the effective nor the real uid of process @var{pid}. @c We need a cross reference to the capabilities section, when written. @@ -1185,7 +1185,7 @@ The value of @var{class} is not valid. @item EPERM The call would set the nice value of a process which is owned by a different -user than the calling process (i.e. the target process' real or effective +user than the calling process (i.e., the target process' real or effective uid does not match the calling process' effective uid) and the calling process does not have @code{CAP_SYS_NICE} permission. @@ -1215,7 +1215,7 @@ a process group ID (pgid). @comment sys/resource.h @comment BSD @item PRIO_USER -All the processes owned by a particular user (i.e. whose real uid +All the processes owned by a particular user (i.e., whose real uid indicates the user). The argument @var{id} is a user ID (uid). @end vtable @@ -1272,7 +1272,7 @@ other process or thread is allowed to use. @item The access to certain resources (RAM, I/O ports) has different costs from different CPUs. This is the case in NUMA (Non-Uniform Memory -Architecture) machines. Preferrably memory should be accessed locally +Architecture) machines. Preferably memory should be accessed locally but this requirement is usually not visible to the scheduler. Therefore forcing a process or thread to the CPUs which have local access to the mostly used memory helps to significantly boost the diff --git a/manual/search.texi b/manual/search.texi index 1ac2653..0afd0ae 100644 --- a/manual/search.texi +++ b/manual/search.texi @@ -82,7 +82,7 @@ starting at @var{base} if it is found. If no matching element is available @code{NULL} is returned. The mean runtime of this function is @code{*@var{nmemb}}/2. This -function should only be used elements often get added to or deleted from +function should only be used if elements often get added to or deleted from the array in which case it might not be useful to sort the array before searching. @end deftypefun @@ -247,21 +247,21 @@ Couldn't find Janice. @node Hash Search Function @section The @code{hsearch} function. -The functions mentioned so far in this chapter are searching in a sorted +The functions mentioned so far in this chapter are for searching in a sorted or unsorted array. There are other methods to organize information which later should be searched. The costs of insert, delete and search differ. One possible implementation is using hashing tables. -The following functions are declared in the the header file @file{search.h}. +The following functions are declared in the header file @file{search.h}. @comment search.h @comment SVID @deftypefun int hcreate (size_t @var{nel}) The @code{hcreate} function creates a hashing table which can contain at least @var{nel} elements. There is no possibility to grow this table so -it is necessary to choose the value for @var{nel} wisely. The used -methods to implement this function might make it necessary to make the +it is necessary to choose the value for @var{nel} wisely. The method +used to implement this function might make it necessary to make the number of elements in the hashing table larger than the expected maximal -number of elements. Hashing tables usually work inefficient if they are +number of elements. Hashing tables usually work inefficiently if they are filled 80% or more. The constant access time guaranteed by hashing can only be achieved if few collisions exist. See Knuth's ``The Art of Computer Programming, Part 3: Searching and Sorting'' for more @@ -368,9 +368,9 @@ necessary for the @code{struct hsearch_data} object can be allocated dynamically. It must be initialized with zero before calling this function. -The return value is non-zero if the operation were successful. if the -return value is zero something went wrong which probably means the -programs runs out of memory. +The return value is non-zero if the operation was successful. If the +return value is zero, something went wrong, which probably means the +programs ran out of memory. @end deftypefun @comment search.h diff --git a/manual/signal.texi b/manual/signal.texi index cbf7466..dfaaa88 100644 --- a/manual/signal.texi +++ b/manual/signal.texi @@ -2567,7 +2567,7 @@ The prototype for the @code{sigprocmask} function is in @file{signal.h}. Note that you must not use @code{sigprocmask} in multi-threaded processes, because each thread has its own signal mask and there is no single process signal mask. According to POSIX, the behavior of @code{sigprocmask} in a -multi-threaded process is ``unspeficied''. +multi-threaded process is ``unspecified''. Instead, use @code{pthread_sigmask}. @ifset linuxthreads @xref{Threads and Signal Handling}. diff --git a/manual/startup.texi b/manual/startup.texi index 5ccb78b..79c7968 100644 --- a/manual/startup.texi +++ b/manual/startup.texi @@ -830,7 +830,7 @@ mean that there was difficulty in opening the files. Don't confuse a program's exit status with a process' termination status. There are lots of ways a process can terminate besides having it's program finish. In the event that the process termination @emph{is} caused by program -termination (i.e. @code{exit}), though, the program's exit status becomes +termination (i.e., @code{exit}), though, the program's exit status becomes part of the process' termination status. @node Cleanups on Exit diff --git a/manual/stdio.texi b/manual/stdio.texi index 977989d..30a6e6e 100644 --- a/manual/stdio.texi +++ b/manual/stdio.texi @@ -433,7 +433,7 @@ see @ref{Stream Buffering}. @cindex multi-threaded application Streams can be used in multi-threaded applications in the same way they are used in single-threaded applications. But the programmer must be -aware of a the possible complications. It is important to know about +aware of the possible complications. It is important to know about these also if the program one writes never use threads since the design and implementation of many stream functions is heavily influenced by the requirements added by multi-threaded programming. @@ -1992,7 +1992,7 @@ the precision. The exponent always contains at least two digits. The The @samp{%g} and @samp{%G} conversions print the argument in the style of @samp{%e} or @samp{%E} (respectively) if the exponent would be less than -4 or greater than or equal to the precision; otherwise they use -the @samp{%f} style. A precision of @code{0}, is taken as 1. is +the @samp{%f} style. A precision of @code{0}, is taken as 1. Trailing zeros are removed from the fractional portion of the result and a decimal-point character appears only if it is followed by a digit. diff --git a/manual/string.texi b/manual/string.texi index f582bad..2fe6039 100644 --- a/manual/string.texi +++ b/manual/string.texi @@ -1187,8 +1187,8 @@ regards these characters as parts of the alphabet they do match. @comment ISO @deftypefun int strncmp (const char *@var{s1}, const char *@var{s2}, size_t @var{size}) This function is the similar to @code{strcmp}, except that no more than -@var{size} wide characters are compared. In other words, if the two -strings are the same in their first @var{size} wide characters, the +@var{size} characters are compared. In other words, if the two +strings are the same in their first @var{size} characters, the return value is zero. @end deftypefun @@ -1966,11 +1966,6 @@ Note that ``character'' is here used in the sense of byte. In a string using a multibyte character encoding (abstract) character consisting of more than one byte are not treated as an entity. Each byte is treated separately. The function is not locale-dependent. - -Note that ``character'' is here used in the sense of byte. In a string -using a multibyte character encoding (abstract) character consisting of -more than one byte are not treated as an entity. Each byte is treated -separately. The function is not locale-dependent. @end deftypefun @comment wchar.h diff --git a/manual/sysinfo.texi b/manual/sysinfo.texi index 0a44830..8f2dd45 100644 --- a/manual/sysinfo.texi +++ b/manual/sysinfo.texi @@ -872,7 +872,7 @@ shall be accessible while the filesystem is mounted. @item MS_SYNCHRONOUS This bit on specifies that all writes to the filesystem while it is -mounted shall be synchronous; i.e. data shall be synced before each +mounted shall be synchronous; i.e., data shall be synced before each write completes rather than held in the buffer cache. @item MS_MANDLOCK diff --git a/manual/syslog.texi b/manual/syslog.texi index df4179e..3d7def8 100644 --- a/manual/syslog.texi +++ b/manual/syslog.texi @@ -370,7 +370,7 @@ The message is only for debugging purposes. Results are undefined if the priority code is anything else. -If the process does not presently have a Syslog connection open (i.e. +If the process does not presently have a Syslog connection open (i.e., it did not call @code{openlog}), @code{syslog} implicitly opens the connection the same as @code{openlog} would, with the following defaults for information that would otherwise be included in an @code{openlog} diff --git a/manual/time.texi b/manual/time.texi index 9b87d3e..a3e8438 100644 --- a/manual/time.texi +++ b/manual/time.texi @@ -193,7 +193,7 @@ total amount of time a process has actively used a CPU since some arbitrary event. On the GNU system, that event is the creation of the process. While arbitrary in general, the event is always the same event for any particular process, so you can always measure how much time on -the CPU a particular computation takes by examinining the process' CPU +the CPU a particular computation takes by examining the process' CPU time before and after the computation. @cindex CPU time @cindex clock ticks @@ -447,7 +447,7 @@ current calendar time is not available, the value @comment time.h @comment SVID, XPG @deftypefun int stime (time_t *@var{newtime}) -@code{stime} sets the system clock, i.e. it tells the system that the +@code{stime} sets the system clock, i.e., it tells the system that the current calendar time is @var{newtime}, where @code{newtime} is interpreted as described in the above definition of @code{time_t}. @@ -1470,7 +1470,7 @@ widely available. @node Low-Level Time String Parsing @subsubsection Interpret string according to given format -he first function is rather low-level. It is nevertheless frequently +The first function is rather low-level. It is nevertheless frequently used in software since it is better known. Its interface and implementation are heavily influenced by the @code{getdate} function, which is defined and implemented in terms of calls to @code{strptime}. @@ -1790,7 +1790,7 @@ process. If the input string contains more characters than required by the format string the return value points right after the last consumed input character. If the whole input string is consumed the return value points to the @code{NULL} byte at the end of the string. If an error -occurs, i.e. @code{strptime} fails to match all of the format string, +occurs, i.e., @code{strptime} fails to match all of the format string, the function returns @code{NULL}. @end deftypefun -- cgit v1.1