summaryrefslogtreecommitdiff
path: root/sysdeps/mach/hurd/fork.c
AgeCommit message (Collapse)Author
2018-03-17hurd: Replace threadvars with TLSSamuel Thibault
This gets rid of a lot of kludge and gets closer to other ports. * hurd/Makefile (headers): Remove threadvar.h. (inline-headers): Remove threadvar.h. * hurd/Versions (GLIBC_2.0: Remove __hurd_sigthread_stack_base, __hurd_sigthread_stack_end, __hurd_sigthread_variables, __hurd_threadvar_max, __hurd_errno_location. (HURD_CTHREADS_0.3): Add pthread_getattr_np, pthread_attr_getstack. * hurd/hurd/signal.h: Do not include <hurd/threadvar.h>. (_hurd_self_sigstate): Use THREAD_SELF to get _hurd_sigstate. (_HURD_SIGNAL_H_EXTERN_INLINE): Use THREAD_SELF to get _hurd_sigstate, unless TLS is not initialized yet, in which case we do not need a critical section yet anyway. * hurd/hurd/threadvar.h: Include <tls.h>, do not include <machine-sp.h>. (__hurd_sigthread_variables, __hurd_threadvar_max): Remove variables declarations. (__hurd_threadvar_index): Remove enum. (_HURD_THREADVAR_H_EXTERN_INLINE): Remove macro. (__hurd_threadvar_location_from_sp,__hurd_threadvar_location): Remove inlines. (__hurd_reply_port0): New variable declaration. (__hurd_local_reply_port): New macro. * hurd/hurdsig.c (__hurd_sigthread_variables): Remove variable. (interrupted_reply_port_location): Add thread_t parameter. Use it with THREAD_TCB to access thread-local variables. (_hurdsig_abort_rpcs): Pass ss->thread to interrupted_reply_port_location. (_hurd_internal_post_signal): Likewise. (_hurdsig_init): Use presence of cthread_fork instead of __hurd_threadvar_stack_mask to start signal thread by hand. Remove signal thread threadvar initialization. * hurd/hurdstartup.c: Do not include <hurd/threadvar.h> * hurd/sigunwind.c: Include <hurd/threadvar.h> (_hurdsig_longjmp_from_handler): Use __hurd_local_reply_port instead of threadvar. * sysdeps/mach/hurd/Versions (libc.GLIBC_PRIVATE): Add __libc_lock_self0. (ld.GLIBC_2.0): Remove __hurd_sigthread_stack_base, __hurd_sigthread_stack_end, __hurd_sigthread_variables. (ld.GLIBC_PRIVATE): Add __libc_lock_self0. * sysdeps/mach/hurd/cthreads.c: Add __libc_lock_self0. * sysdeps/mach/hurd/dl-sysdep.c (errno, __hurd_sigthread_stack_base, __hurd_sigthread_stack_end, __hurd_sigthread_variables, threadvars, __hurd_threadvar_stack_offset, __hurd_threadvar_stack_mask): Do not define variables. * sysdeps/mach/hurd/errno-loc.c: Do not include <errno.h> and <hurd/threadvar.h>. [IS_IN(rtld)] (rtld_errno): New variable. [IS_IN(rtld)] (__errno_location): New weak function. [!IS_IN(rtld)]: Include "../../../csu/errno-loc.c". * sysdeps/mach/hurd/errno.c: Remove file. * sysdeps/mach/hurd/fork.c: Include <hurd/threadvar.h> (__fork): Remove THREADVAR_SPACE macro and its use. * sysdeps/mach/hurd/i386/init-first.c (__hurd_threadvar_max): Remove variable. (init): Do not initialize threadvar. * sysdeps/mach/hurd/i386/libc.abilist (__hurd_threadvar_max): Remove symbol. * sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Use __hurd_local_reply_port instead of threadvar. * sysdeps/mach/hurd/i386/tls.h (tcbhead_t): Add reply_port and _hurd_sigstate fields. (HURD_DESC_TLS, __LIBC_NO_TLS, THREAD_TCB): New macro. * sysdeps/mach/hurd/i386/trampoline.c: Remove outdated comment. * sysdeps/mach/hurd/libc-lock.h: Do not include <hurd/threadvar.h>. (__libc_lock_owner_self): Use &__libc_lock_self0 and THREAD_SELF instead of threadvar. * sysdeps/mach/hurd/libc-tsd.h: Remove file. * sysdeps/mach/hurd/mig-reply.c (GETPORT, reply_port): Remove macros. (use_threadvar, global_reply_port): Remove variables. (__hurd_reply_port0): New variable. (__mig_get_reply_port): Use __hurd_local_reply_port and __hurd_reply_port0 instead of threadvar. (__mig_dealloc_reply_port): Likewise. (__mig_init): Do not initialize threadvar. * sysdeps/mach/hurd/profil.c: Fix comment.
2018-03-17hurd: add TLS supportSamuel Thibault
* sysdeps/generic/thread_state.h (MACHINE_NEW_THREAD_STATE_FLAVOR): Define macro. * sysdeps/mach/thread_state.h (MACHINE_THREAD_STATE_FIX_NEW): New macro. * sysdeps/mach/i386/thread_state.h (MACHINE_NEW_THREAD_STATE_FLAVOR): New macro, defined to i386_THREAD_STATE. (MACHINE_THREAD_STATE_FLAVOR): Define to i386_REGS_SEGS_STATE instead of i386_THREAD_STATE. (MACHINE_THREAD_STATE_FIX_NEW): New macro, reads segments. * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Use i386_REGS_SEGS_STATE instead of i386_THREAD_STATE. * sysdeps/mach/hurd/i386/tls.h (TCB_ALIGNMENT, HURD_SEL_LDT): New macros. (_hurd_tls_fork): Add original thread parameter, Duplicate existing LDT descriptor instead of creating a new one. (_hurd_tls_new): New function, creates a new descriptor and updates tcb. * mach/setup-thread.c: Include <ldsodefs.h>. (__mach_setup_thread): Call _dl_allocate_tls, pass MACHINE_NEW_THREAD_STATE_FLAVOR to __thread_set_state instead of MACHINE_THREAD_STATE_FLAVOR, before getting MACHINE_THREAD_STATE_FLAVOR, calling _hurd_tls_new, and setting MACHINE_THREAD_STATE_FLAVOR with the result. * hurd/hurdfault.c (_hurdsig_fault_init): Call MACHINE_THREAD_STATE_FIX_NEW. * sysdeps/mach/hurd/fork.c (__fork): Call _hurd_tls_fork for sigthread too. Add original thread parameter.
2018-01-27hurd: drop elder MACH_IPC_COMPAT handlingSamuel Thibault
This was dropped from GNU Mach in 2006. * mach/Machrules (MIGFLAGS): Do not set -DMACH_IPC_COMPAT=0. * mach/mach/mach_traps.h: Drop comment about MACH_IPC_COMPAT. * sysdeps/mach/hurd/fork.c (__fork): Drop special casing MACH_IPC_COMPAT.
2018-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
* All files with FSF copyright notices: Update copyright dates using scripts/update-copyrights. * locale/programs/charmap-kw.h: Regenerated. * locale/programs/locfile-kw.h: Likewise.
2017-01-01Update copyright dates with scripts/update-copyrights.Joseph Myers
2016-09-22hurdmalloc: Run fork handler as late as possible [BZ #19431]Samuel Thibault
This is the hurd-specific follow-up for 29d794863cd6e03115d3670707cc873a9965ba92 : hurdmalloc also needs the same fix * hurd/hurdmalloc.c (malloc_fork_prepare): Rename to _hurd_malloc_fork_prepare. (malloc_fork_parent): Rename to _hurd_malloc_fork_parent. (malloc_fork_child): Rename to _hurd_malloc_fork_child. (_hurd_fork_prepare_hook): Drop malloc_fork_prepare. (_hurd_fork_parent_hook): Drop malloc_fork_parent. (_hurd_fork_child_hook): Drop malloc_fork_child. * hurd/hurdmalloc.h (_hurd_malloc_fork_prepare, _hurd_malloc_fork_parent, _hurd_malloc_fork_child): Add declarations. * sysdeps/mach/hurd/fork.c (__fork): Call __malloc_fork_lock_parent after locking locks (notably hurd_dtable_lock). Call _hurd_malloc_fork_prepare after that. Call _hurd_malloc_fork_parent before __malloc_fork_unlock_parent and _hurd_malloc_fork_child before __malloc_fork_unlock_child.
2016-08-26malloc: Simplify static malloc interposition [BZ #20432]Florian Weimer
Existing interposed mallocs do not define the glibc-internal fork callbacks (and they should not), so statically interposed mallocs lead to link failures because the strong reference from fork pulls in glibc's malloc, resulting in multiple definitions of malloc-related symbols.
2016-04-14malloc: Run fork handler as late as possible [BZ #19431]Florian Weimer
Previously, a thread M invoking fork would acquire locks in this order: (M1) malloc arena locks (in the registered fork handler) (M2) libio list lock A thread F invoking flush (NULL) would acquire locks in this order: (F1) libio list lock (F2) individual _IO_FILE locks A thread G running getdelim would use this order: (G1) _IO_FILE lock (G2) malloc arena lock After executing (M1), (F1), (G1), none of the threads can make progress. This commit changes the fork lock order to: (M'1) libio list lock (M'2) malloc arena locks It explicitly encodes the lock order in the implementations of fork, and does not rely on the registration order, thus avoiding the deadlock.
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers
2015-11-29hurd: install correct number of send rights on forkThomas Schwinge
* sysdeps/mach/hurd/fork.c (__fork): Install correct number of send rights for its main user thread in NEWTASK.
2015-03-21Fix warningsSamuel Thibault
* sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Depend on libc-modules.h * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Remove unused declaration of _hurd_intr_rpc_msg_in_trap. * mach/mach_init.c (__mach_init): Test whether HAVE_HOST_PAGE_SIZE is defined instead of whether it is non-zero. * sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Use "+m" input constraint instead of both input and output constraint. Use ecx clobber instead of %ecx. * sysdeps/mach/hurd/malloc-machine.h (mutex_init, mutex_lock, mutex_unlock): Use a statement expression instead of an expression list. * sysdeps/mach/hurd/setitimer.c (_hurd_itimer_thread_stack_size): Set type to vm_size_t instead of vm_address_t. * sysdeps/mach/hurd/fork.c (__fork): Test whether STACK_GROWTH_UP is defined instead of whether it is non-zero. * hurd/hurd/ioctl.h (_hurd_locked_install_cttyid): New declaration. * sysdeps/mach/hurd/setsid.c: Include <hurd/ioctl.h>. * sysdeps/mach/hurd/mmap.c (__mmap): Use 0 instead of NULL for comparisons with mapaddr. * nscd/nscd-client.h: Include <time.h>. * sysdeps/mach/hurd/dl-sysdep.c (fmh): Pass vm_offset_t dummy 9th parameter to __vm_region instead of int.
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers
2014-08-28Fix hang on forkSamuel Thibault
If e.g. a signal is being received while we are running fork(), the signal thread may be having our SS lock when we make the space copy, and thus in the child we can not take the SS lock any more. * sysdeps/mach/hurd/fork.c (__fork): Lock SS->lock around __proc_dostop call. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-10-04Add fork hooks for pthread_atforkSamuel Thibault
pthread_atfork needs application callbacks to be called outside any locking.
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2013-01-01Add script to update copyright notices and reformat some to facilitate its use.Joseph Myers
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2011-09-08Hurd: fix use of uninitialized value in fork port copying.Roland McGrath
2007-01-11[BZ #2510, BZ #2830, BZ #3137, BZ #3313, BZ #3426, BZ #3465, BZ #3480, BZ ↵Ulrich Drepper
#3483, BZ #3493, BZ #3514, BZ #3515, BZ #3664, BZ #3673, BZ #3674] 2007-01-11 Jakub Jelinek <jakub@redhat.com> * sysdeps/i386/soft-fp/sfp-machine.h: Remove. * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise. 2007-01-10 Ulrich Drepper <drepper@redhat.com> * io/fts.c: Make sure fts_cur is always valid after return from fts_read. Patch by Miloslav Trmac <mitr@redhat.com>. 2006-10-27 Richard Sandiford <richard@codesourcery.com> * elf/elf.h (R_MIPS_GLOB_DAT): Define. (R_MIPS_NUM): Bump by 1. 2007-01-03 Jakub Jelinek <jakub@redhat.com> * 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 <drepper@redhat.com> * 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 <drepper@redhat.com> * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment attempts. 2006-12-23 Ulrich Drepper <drepper@redhat.com> * posix/wordexp.c: Remove some unnecessary tests. 2006-12-20 SUGIOKA Toshinobu <sugioka@itonet.co.jp> * 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 <jakub@redhat.com> * 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 <sjmunroe@us.ibm.com> * 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 <jakub@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include kernel-features.h. 2006-12-11 Ulrich Drepper <drepper@redhat.com> * 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 <drepper@redhat.com> * 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 <jakub@redhat.com> * nis/nis_subr.c (nis_getnames): Revert last change. 2006-12-03 Kaz Kojima <kkojima@rr.iij4u.or.jp> * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed. 2006-11-30 H.J. Lu <hongjiu.lu@intel.com> * sysdeps/i386/i686/memcmp.S: Use jump table as the base of jump table entries. 2006-11-30 Jan Kratochvil <jan.kratochvil@redhat.com> * 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 <drepper@redhat.com> * nscd/nscd.init: Remove obsolete and commented-out -S option handling. 2006-11-23 Jakub Jelinek <jakub@redhat.com> [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 <jan.kratochvil@redhat.com> * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with libgcc not supporting `rflags' unwinding (register # >= 17). 2006-11-30 Jakub Jelinek <jakub@redhat.com> * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc succeeded. 2006-11-29 Daniel Jacobowitz <dan@codesourcery.com> Jakub Jelinek <jakub@redhat.com> Jan Kratochvil <jan.kratochvil@redhat.com> * 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 <jakub@redhat.com> * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change. 2006-11-20 Ulrich Drepper <drepper@redhat.com> * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit. 2006-11-18 Bruno Haible <bruno@clisp.org> * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke __sysconf only after having tried to call getgroups32. 2006-11-19 Ulrich Drepper <drepper@redhat.com> * 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 <jakub@redhat.com> * 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 <drepper@redhat.com> * po/nl.po: Update from translation team. * timezone/zdump.c: Redo fix for BZ #3137. 2006-11-14 Jakub Jelinek <jakub@redhat.com> * 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 <bensberg@justemail.net>. [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 <Ralf.Wildenhues@gmx.de>. [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 Jakub Jelinek <jakub@redhat.com> * 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 <drepper@redhat.com> * 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 <drepper@redhat.com> [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 <sri@us.ibm.com>. * string/Makefile (tests): Add tst-strxfrm2. * string/tst-strxfrm2.c: New file. 2006-10-09 Jakub Jelinek <jakub@redhat.com> * 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 <jakub@redhat.com> * 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 <sjmunroe@us.ibm.com> * 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 <drepper@redhat.com> * 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 <drepper@redhat.com> * 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 <drepper@redhat.com> * po/sv.po: Update from translation team. 2006-10-31 Ulrich Drepper <drepper@redhat.com> * stdlib/atexit.c (atexit): Don't mark as hidden when used to generate compatibility version. 2006-10-29 Ulrich Drepper <drepper@redhat.com> * configure.in: Relax -z relro requirement a bit. * po/sv.po: Update from translation team. 2006-10-29 Jakub Jelinek <jakub@redhat.com> * 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 <jakub@redhat.com> * 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 <drepper@redhat.com> * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION. 2006-10-18 Ulrich Drepper <drepper@redhat.com> * configure.in: Disable building profile libraries by default. 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. 2006-10-14 Ulrich Drepper <drepper@redhat.com> * 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 <aj@suse.de> [BZ #2510] * manual/search.texi (Hash Search Function): Clarify. (Array Search Function): Clarify. 2006-11-12 Joseph Myers <joseph@codesourcery.com> [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 <jakub@redhat.com> * 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 <drepper@redhat.com> * 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 <roland@frob.com> * 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 <drepper@redhat.com> Jakub Jelinek <jakub@redhat.com> 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 <rtld-lowlevel.h>. Define struct r_scoperec. Replace r_scope with pointer to r_scoperec structure. Add l_scoperec_lock. * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>. * 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 <drepper@redhat.com> * 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 <drepper@redhat.com> * version.h (VERSION): Bump to 2.5.90 for new development tree.
2007-07-31.Jakub Jelinek
2006-10-27USE_TLS support is now default.Ulrich Drepper
* 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.
2005-12-21* elf/cache.c: Use <> rather than "" #includes.Roland McGrath
* elf/chroot_canon.c: Likewise. * elf/dl-lookup.c: Likewise. * elf/ldconfig.c: Likewise. * elf/readlib.c: Likewise. * elf/rtld.c: Likewise. * gmon/mcount.c: Likewise. * hurd/hurdfault.c: Likewise. * hurd/hurdsig.c: Likewise. * hurd/report-wait.c: Likewise. * hurd/sigunwind.c: Likewise. * mach/setup-thread.c: Likewise. * rt/aio_read64.c: Likewise. * rt/aio_sigqueue.c: Likewise. * rt/aio_write64.c: Likewise. * soft-fp/soft-fp.h: Likewise. * stdio-common/tmpfile64.c: Likewise. * sysdeps/mach/hurd/fork.c: Likewise. * sysdeps/mach/hurd/hppa/trampoline.c: Likewise. * sysdeps/mach/hurd/i386/trampoline.c: Likewise. * sysdeps/mach/hurd/mips/trampoline.c: Likewise. * sysdeps/mach/hurd/powerpc/trampoline.c: Likewise. * sysdeps/posix/sprofil.c: Likewise. * sysdeps/pthread/aio_cancel.c: Likewise. * sysdeps/pthread/aio_fsync.c: Likewise. * sysdeps/pthread/aio_read64.c: Likewise. * sysdeps/pthread/aio_read.c: Likewise. * sysdeps/pthread/aio_suspend.c: Likewise. * sysdeps/pthread/aio_write64.c: Likewise. * sysdeps/pthread/aio_write.c: Likewise. * sysdeps/pthread/lio_listio64.c: Likewise. * sysdeps/pthread/lio_listio.c: Likewise. * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise. * sysdeps/unix/sysv/tcflow.c: Likewise.
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper
2007-07-122.5-18.1Jakub Jelinek
2004-10-27* sysdeps/mach/hurd/i386/tls.h (HURD_TLS_DESC_DECL): New macro.Roland McGrath
(_hurd_tls_init): Use it. (_hurd_tls_fork): New function. * sysdeps/mach/hurd/fork.c (__fork) [USE_TLS]: Call it.
2002-12-31Update.Ulrich Drepper
* include/unistd.h: Add libc_hidden_proto for __fork and __vfork. * sysdeps/generic/fork.c: Add libc_hidden_def for __fork. * sysdeps/mach/hurd/fork.c: Likewise. * sysdeps/unix/sysv/aix/fork.c: Likewise. * sysdeps/unix/fork.S: Add __GI___fork alias. * sysdeps/unix/arm/fork.S: Likewise. * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise. * sysdeps/unix/i386/fork.S: Likewise. * sysdeps/unix/mips/fork.S: Likewise. * sysdeps/unix/sparc/fork.S: Likewise. * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise. * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Likewise. * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork. * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias. * sysdeps/unix/bsd/i386/vfork.S: Likewise. * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise. * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise. * sysdeps/unix/bsd/vax/vfork.S: Likewise. * sysdeps/unix/sparc/vfork.S: Likewise. * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise. * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise. * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise. * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise. * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise. * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise. * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2002-09-20* sysdeps/mach/hurd/fork.c (__fork): Do not free the signalRoland McGrath
thread's sigstate data structure if it has been allocated.
2002-06-20Update.Ulrich Drepper
2002-06-18 Jakub Jelinek <jakub@redhat.com> * include/unistd.h (__fork_internal): Remove. (__fork): Don't define to __fork_internal. * sysdeps/mach/hurd/fork.c (__fork): Remove INTDEF. * sysdeps/unix/sysv/aix/fork.c (__fork): Likewise. * sysdeps/unix/sysv/linux/ia64/fork.S (__fork_internal): Remove alias. * sysdeps/unix/sysv/linux/sparc/fork.S (__fork_internal): Likewise. * sysdeps/unix/sysv/linux/syscalls.list (__fork_internal): Likewise. 2002-06-20 Ulrich Drepper <drepper@redhat.com> * po/hr.po: New file. 2002-06-11 Wolfram Gloger <wg@malloc.de> * malloc/malloc.c: Fix error path when new_heap() returns NULL. Reported by Michael Meissner <meissner@redhat.com>. 2002-06-20 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/ia64/getcontext.S: Fix typo. Patch by Hans Boehm <hans_boehm@hp.com>.
2002-04-09Update.Ulrich Drepper
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown. * sysdeps/unix/sysv/aix/chown.c: Likewise. * sysdeps/unix/grantpt.c: Use INTUSE for __chown calls. * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise. * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise. * sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define __chown_internal. * sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise. * intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext. * intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE. * intl/ngettext.c: Likewise. * include/sys/socket.h: Declare __connect_internal and define __connect macro if not NOT_IN_libc. * sysdeps/mach/hurd/connect.c: Use INTDEF for __connect. * sysdeps/unix/sysv/aix/connect.c: Likewise. * sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias. * include/unistd.h: Declare __close_internal and define __close macro if not NOT_IN_libc. * libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2, WJUMP3): Add extra parenthesis to avoid expanding element names with macors like __close. * sysdeps/unix/syscalls.list: Add __close_internal alias. * include/unistd.h: Declare __dup2_internal and define __dup2 macro if not NOT_IN_libc. * sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2. * sysdeps/posix/dup2.c: Use INTDEF for __dup2. * sysdeps/unix/syscalls.list: Add __dup2_internal alias. * include/unistd.h: Declare __fork_internal and define __fork macro if not NOT_IN_libc. * sysdeps/mach/hurd/fork.c: Use INTDEF for __fork. * sysdeps/unix/sysv/aix/fork.c: Likewise. * sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias. * include/stdio_ext.h: Declare __fsetlocking_internal and define __fsetlocking macro to use it if not NOT_IN_libc. * libio/__fsetlocking.c: Use INTDEF for __fsetlocking. * libio/__fbufsize.c: Correct copyright. * libio/__flbf.c: Likewise. * libio/__fpending.c: Likewise. * libio/__fpurge.c: Likewise. * libio/__freadable.c: Likewise. * libio/__freading.c: Likewise. * libio/__fsetlocking.c: Likewise. * libio/__fwritable.c: Likewise. * libio/__fwriting.c: Likewise. * include/stdio.h: Declare __asprintf_internal and define __asprintf macro to use it if not NOT_IN_libc. * stdio-common/asprintf.c: Use INTDEF for __asprintf. * include/mntent.h: Declare __setmntent_internal, __getmntent_r_internal, __endmntent_internal. Define __setmntent, __getmntent_r, and __endmntent macros to use these functions if not NOT_IN_libc. * misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and __endmntent. * include/math.h: Declare __finite_internal, __finitef_internal, and __finitel_internal. Redefine isfinite macro if in libc or libm using these functions. * sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls. * sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls. * sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls. * sysdeps/i386/fpu/s_finite.S: Define _internal alias. * sysdeps/i386/fpu/s_finitef.S: Likewise. * sysdeps/i386/fpu/s_finitel.S: Likewise. * sysdeps/ieee754/dbl-64/s_finite.c: Likewise. * sysdeps/ieee754/flt-32/s_finitef.c: Likewise. * sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise. * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise. * include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro to use this function if not NOT_IN_libc. * libio/iofdopen.c (_IO_fcntl): Use INTUSE. * sysdeps/generic/fcntl.c: Use INTDEF for __fcntl. * sysdeps/mach/hurd/fcntl.c: Likewise. * sysdeps/unix/sysv/aix/fcntl.c: Likewise. * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise. * include/argz.h: Declare __argz_count_internal and __argz_stringify_internal. * intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and __argz_stringify. * string/argz-count.c: Use INTDEF for __argz_count. * string/argz-stringify.c: Use INTDEF for __argz_stringify. * include/stdlib.h: Declare __cxa_atexit_internal and define __cxa_atexit macro if not NOT_IN_libc. * stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit. * dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c. * assert/assert.c: Use INTDEF for __assert_fail. * assert/__assert.c: Use INTUSE for call to __assert_fail. * include/assert.h: Declare __assert_fail_internal.
2002-01-02* hurd/hurdinit.c (_hurd_ports_use): Return error _hurd_ports is null.Roland McGrath
* hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup for old CMU and new OSF Mach interface flavors. * hurd/hurdfault.c (_hurdsig_fault_init): Likewise. * sysdeps/mach/hurd/fork.c (__fork): Likewise. * hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset. * sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]: Pass extra arguments to task_create for OSF variant. * sysdeps/mach/hurd/fork.c (__fork): Likewise.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
2001-07-06 Paul Eggert <eggert@twinsun.com> * manual/argp.texi: Remove ignored LGPL copyright notice; it's not appropriate for documentation anyway. * manual/libc-texinfo.sh: "Library General Public License" -> "Lesser General Public License". 2001-07-06 Andreas Jaeger <aj@suse.de> * All files under GPL/LGPL version 2: Place under LGPL version 2.1.
2001-06-14* sysdeps/mach/hurd/fork.c (LOSE): Put `goto lose' in dead codeRoland McGrath
so the label is not considered unused. * sysdeps/mach/hurd/pwrite64.c: New file. * sysdeps/mach/hurd/pread64.c: New file. * sysdeps/mach/hurd/pread.c (__libc_pread): Define this name, with __pread as an alias. * sysdeps/mach/hurd/pwrite.c (__libc_pwrite): Define this name, with __pwrite as an alias. Implement POSIX "shared memory objects" as regular files residing in the /var/run/shm/ directory. This works on any system that supports _POSIX_MAPPED_FILES, to make it also support _POSIX_SHARED_MEMORY_OBJECTS. * sysdeps/posix/shm_open.c: New file. * sysdeps/posix/shm_unlink.c: New file. * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_SHARED_MEMORY_OBJECTS): Define it. * rt/aio_notify.c (__aio_notify_only) [! _POSIX_REALTIME_SIGNALS]: Use raise instead of __aio_sigqueue.
2001-04-09* mach/msgserver.c (__mach_msg_server_timeout): Add an assert.Roland McGrath
2001-03-31 Roland McGrath <roland@frob.com> * sysdeps/mach/hurd/fork.c: Skip NEWPROC just like NEWTASK when copying send rights into child. When we hit our name for our proc port, just copy NEWPROC directly instead of repeating proc_task2proc to install the child's port. 2001-04-08 Roland McGrath <roland@frob.com> * Makeconfig ($(common-objpfx)soversions.i): Grok entries with DEFAULT in second column, to provide default values for third column. * shlib-versions: Add comments about using DEFAULT in second column. (s390x-.*-linux.*): Replace individual entries with a DEFAULT entry. (cris-.*-linux.*): Likewise.
1999-12-031999-11-18 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* hurd/hurdsig.c (_hurdsig_init): If __hurd_threadvar_stack_mask is nonzero, use cthread_fork to create the signal thread. * hurd/msgportdemux.c (_hurd_msgport_receive): Initialize _hurd_msgport_thread here (to self). * sysdeps/mach/hurd/fork.c (__fork): When __hurd_sigthread_stack_end is zero, instead compute child signal thread's starting SP from parent signal thread's current SP and the threadvar_stack variables. * hurd/Versions (GLIBC_2.1.3): Add cthread_fork, cthread_detach. These are now referenced weakly by _hurdsig_init. * hurd/report-wait.c (_S_msg_report_wait): Fix typo: &_hurd_itimer_thread not &_hurd_msgport_thread. 1999-10-01 Roland McGrath <roland@baalperazim.frob.com> * hurd/hurdfchdir.c (_hurd_change_directory_port_from_fd): Rewrite without HURD_DPORT_USE to clean up warnings. * hurd/dtable.c (get_dtable_port): Likewise. * hurd/hurdioctl.c (rectty_dtable): Renamed to install_ctty. (install_ctty): Do the changing of the cttyid port cell here, inside the critical section while we holding the dtable lock. (_hurd_setcttyid, tiocsctty, tiocnotty): Use that instead of changing the port cell and calling rectty_dtable. (_hurd_locked_install_cttyid): New function, split out of install_ctty. (install_ctty): Use it inside a critical section, with the lock held. * sysdeps/mach/hurd/setsid.c (__setsid): Use _hurd_locked_install_cttyid to effect the cttyid and dtable changes after proc_setsid, having held the dtable lock throughout. * hurd/dtable.c (ctty_new_pgrp): With the dtable lock held, check the cttyid port for null and bail out early if so. The dtable lock serializes us after any cttyid change and its associated dtable update.
1999-06-131999-06-12 Mark Kettenis <kettenis@gnu.org> Roland McGrath
* sysdeps/mach/hurd/fork.c (__fork): Make use of `insert_type' when inserting a send right into the child instead of unconditionally copying the send right.
1997-06-23Update.cvs/libc-ud-970623Ulrich Drepper
1997-06-23 23:39 Ulrich Drepper <drepper@cygnus.com> * string/Makefile (headers): Change bytesex.h to bits/endian.h. * sysdeps/generic/Makefile: Don't try to generate bytesex.h, but bits/endian.h. * math/libm-test.c (lgamma_test): Make sure the test of the ilogb function will not fail because of exceptions. * math/math.h: Add warning about use of M_* constants. Pretty print. 1997-06-23 11:36 Andreas Jaeger <aj@arthur.rhein-neckar.de> * hurd/path-lookup.c: Change GPL to LGPL, update and reformat copyright, remove trailing white spaces and send through unexpand. * inet/netinet/icmp6.h: Likewise. * inet/netinet/in.h: Likewise. * inet/netinet/ip6.h: Likewise. * locale/programs/xmalloc.c: Likewise. * locale/programs/xstrdup.c: Likewise. * sysdeps/generic/make_siglist.c: Likewise. * sysdeps/generic/morecore.c: Likewise. * sysdeps/generic/sbrk.c: Likewise. * sysdeps/generic/signame.c: Likewise. * sysdeps/generic/signame.h: Likewise. * sysdeps/generic/netinet/inbits.h: Likewise. * sysdeps/posix/getpagesize.c: Likewise. * sysdeps/unix/errnos-tmpl.c: Likewise. * sysdeps/unix/getpagesize.c: Likewise. * sysdeps/unix/make_errlist.c: Likewise. * sysdeps/unix/mkfifo.c: Likewise. * sysdeps/unix/nlist.c: Likewise. * sysdeps/unix/start.c: Likewise. * sysdeps/unix/sysv/linux/netinet/inbits.h: Likewise. * munch-tmpl.c: Update and reformat copyright, remove trailing white spaces and send through unexpand. * libio/clearerr_u.c: Likewise. * libio/memstream.c: Likewise. * libio/putc_u.c: Likewise. * libio/putchar_u.c: Likewise. * stdio-common/scanf.c: Likewise. * stdlib/longlong.h: Likewise. * sysdeps/alpha/__longjmp.c: Likewise. * sysdeps/alpha/divrem.h: Likewise. * sysdeps/alpha/machine-gmon.h: Likewise. * sysdeps/alpha/setjmp_aux.c: Likewise. * sysdeps/alpha/bits/setjmp.h: Likewise. * sysdeps/arm/fpu_control.h: Likewise. * sysdeps/generic/_strerror.c: Likewise. * sysdeps/generic/det_endian.c: Likewise. * sysdeps/generic/fdatasync.c: Likewise. * sysdeps/generic/fpu_control.c: Likewise. * sysdeps/generic/ftime.c: Likewise. * sysdeps/generic/getdomain.c: Likewise. * sysdeps/generic/group_member.c: Likewise. * sysdeps/generic/ldiv.c: Likewise. * sysdeps/generic/lldiv.c: Likewise. * sysdeps/generic/lxstat.c: Likewise. * sysdeps/generic/memcmp.c: Likewise. * sysdeps/generic/memmem.c: Likewise. * sysdeps/generic/mig-reply.c: Likewise. * sysdeps/generic/pagecopy.h: Likewise. * sysdeps/generic/profil-counter.h: Likewise. * sysdeps/generic/pselect.c: Likewise. * sysdeps/generic/setfpucw.c: Likewise. * sysdeps/generic/stpcpy.c: Likewise. * sysdeps/generic/uname.c: Likewise. * sysdeps/generic/varargs.h: Likewise. * sysdeps/generic/vlimit.c: Likewise. * sysdeps/generic/bits/sigaction.h: Likewise. * sysdeps/generic/bits/ustat.h: Likewise. * sysdeps/generic/netinet/if_ether.h: Likewise. * sysdeps/generic/sys/swap.h: Likewise. * sysdeps/generic/sys/sysinfo.h: Likewise. * sysdeps/i386/init-first.c: Likewise. * sysdeps/i386/ldbl2mpn.c: Likewise. * sysdeps/i386/memcopy.h: Likewise. * sysdeps/i386/i586/memcopy.h: Likewise. * sysdeps/i860/memcopy.h: Likewise. * sysdeps/m68k/__longjmp.c: Likewise. * sysdeps/m68k/fpu_control.h: Likewise. * sysdeps/m68k/memcopy.h: Likewise. * sysdeps/m68k/s_isinfl.c: Likewise. * sysdeps/m68k/s_isnanl.c: Likewise. * sysdeps/m68k/setjmp.c: Likewise. * sysdeps/mach/_strerror.c: Likewise. * sysdeps/mach/getsysstats.c: Likewise. * sysdeps/mach/mprotect.c: Likewise. * sysdeps/mach/munmap.c: Likewise. * sysdeps/mach/pagecopy.h: Likewise. * sysdeps/mach/start.c: Likewise. * sysdeps/mach/sysdep.h: Likewise. * sysdeps/mach/alpha/machine-lock.h: Likewise. * sysdeps/mach/alpha/machine-sp.h: Likewise. * sysdeps/mach/alpha/sysdep.h: Likewise. * sysdeps/mach/alpha/thread_state.h: Likewise. * sysdeps/mach/hppa/machine-lock.h: Likewise. * sysdeps/mach/hurd/access.c: Likewise. * sysdeps/mach/hurd/closedir.c: Likewise. * sysdeps/mach/hurd/dirstream.h: Likewise. * sysdeps/mach/hurd/dl-cache.c: Likewise. * sysdeps/mach/hurd/euidaccess.c: Likewise. * sysdeps/mach/hurd/fdatasync.c: Likewise. * sysdeps/mach/hurd/fexecve.c: Likewise. * sysdeps/mach/hurd/fork.c: Likewise. * sysdeps/mach/hurd/fpathconf.c: Likewise. * sysdeps/mach/hurd/fstatfs.c: Likewise. * sysdeps/mach/hurd/fxstat.c: Likewise. * sysdeps/mach/hurd/getcwd.c: Likewise. * sysdeps/mach/hurd/getpriority.c: Likewise. * sysdeps/mach/hurd/getrlimit.c: Likewise. * sysdeps/mach/hurd/getsid.c: Likewise. * sysdeps/mach/hurd/group_member.c: Likewise. * sysdeps/mach/hurd/kill.c: Likewise. * sysdeps/mach/hurd/lchown.c: Likewise. * sysdeps/mach/hurd/lxstat.c: Likewise. * sysdeps/mach/hurd/mig-reply.c: Likewise. * sysdeps/mach/hurd/mmap.c: Likewise. * sysdeps/mach/hurd/opendir.c: Likewise. * sysdeps/mach/hurd/pathconf.c: Likewise. * sysdeps/mach/hurd/profil.c: Likewise. * sysdeps/mach/hurd/ptrace.c: Likewise. * sysdeps/mach/hurd/readdir.c: Likewise. * sysdeps/mach/hurd/readdir_r.c: Likewise. * sysdeps/mach/hurd/send.c: Likewise. * sysdeps/mach/hurd/sendto.c: Likewise. * sysdeps/mach/hurd/setpriority.c: Likewise. * sysdeps/mach/hurd/statfs.c: Likewise. * sysdeps/mach/hurd/ttyname.c: Likewise. * sysdeps/mach/hurd/uname.c: Likewise. * sysdeps/mach/hurd/xstat.c: Likewise. * sysdeps/mach/hurd/alpha/exc2signal.c: Likewise. * sysdeps/mach/hurd/alpha/longjmp-ts.c: Likewise. * sysdeps/mach/hurd/alpha/sigreturn.c: Likewise. * sysdeps/mach/hurd/alpha/trampoline.c: Likewise. * sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/hppa/trampoline.c: Likewise. * sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/i386/exc2signal.c: Likewise. * sysdeps/mach/hurd/i386/intr-msg.h: Likewise. * sysdeps/mach/hurd/i386/longjmp-ts.c: Likewise. * sysdeps/mach/hurd/i386/sigreturn.c: Likewise. * sysdeps/mach/hurd/i386/trampoline.c: Likewise. * sysdeps/mach/hurd/i386/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise. * sysdeps/mach/hurd/sys/param.h: Likewise. * sysdeps/mach/i386/machine-lock.h: Likewise. * sysdeps/mach/i386/machine-sp.h: Likewise. * sysdeps/mach/i386/sysdep.h: Likewise. * sysdeps/mach/i386/thread_state.h: Likewise. * sysdeps/posix/dup2.c: Likewise. * sysdeps/posix/flock.c: Likewise. * sysdeps/posix/getdtsz.c: Likewise. * sysdeps/posix/gettimeofday.c: Likewise. * sysdeps/posix/isatty.c: Likewise. * sysdeps/posix/killpg.c: Likewise. * sysdeps/posix/mk-stdiolim.c: Likewise. * sysdeps/posix/profil.c: Likewise. * sysdeps/posix/remove.c: Likewise. * sysdeps/posix/rename.c: Likewise. * sysdeps/posix/sigsuspend.c: Likewise. * sysdeps/posix/tempname.c: Likewise. * sysdeps/posix/truncate.c: Likewise. * sysdeps/posix/utimes.c: Likewise. * sysdeps/posix/wait.c: Likewise. * sysdeps/posix/wait3.c: Likewise. * sysdeps/rs6000/memcopy.h: Likewise. * sysdeps/sparc/memcopy.h: Likewise. * sysdeps/standalone/close.c: Likewise. * sysdeps/standalone/dirstream.h: Likewise. * sysdeps/standalone/filedesc.h: Likewise. * sysdeps/standalone/open.c: Likewise. * sysdeps/standalone/read.c: Likewise. * sysdeps/standalone/standalone.h: Likewise. * sysdeps/standalone/write.c: Likewise. * sysdeps/standalone/bits/stdio_lim.h: Likewise. * sysdeps/standalone/i386/i386.h: Likewise. * sysdeps/standalone/m68k/m68020/m68020.h: Likewise. * sysdeps/stub/__longjmp.c: Likewise. * sysdeps/stub/accept.c: Likewise. * sysdeps/stub/access.c: Likewise. * sysdeps/stub/acct.c: Likewise. * sysdeps/stub/adjtime.c: Likewise. * sysdeps/stub/alarm.c: Likewise. * sysdeps/stub/bind.c: Likewise. * sysdeps/stub/brk.c: Likewise. * sysdeps/stub/bsd-_setjmp.c: Likewise. * sysdeps/stub/bsd-setjmp.c: Likewise. * sysdeps/stub/chdir.c: Likewise. * sysdeps/stub/chflags.c: Likewise. * sysdeps/stub/chmod.c: Likewise. * sysdeps/stub/chown.c: Likewise. * sysdeps/stub/chroot.c: Likewise. * sysdeps/stub/clock.c: Likewise. * sysdeps/stub/close.c: Likewise. * sysdeps/stub/closedir.c: Likewise. * sysdeps/stub/connect.c: Likewise. * sysdeps/stub/ctermid.c: Likewise. * sysdeps/stub/cuserid.c: Likewise. * sysdeps/stub/dbl2mpn.c: Likewise. * sysdeps/stub/dirstream.h: Likewise. * sysdeps/stub/dup.c: Likewise. * sysdeps/stub/dup2.c: Likewise. * sysdeps/stub/exc2signal.c: Likewise. * sysdeps/stub/execve.c: Likewise. * sysdeps/stub/fchflags.c: Likewise. * sysdeps/stub/fchown.c: Likewise. * sysdeps/stub/fcntl.c: Likewise. * sysdeps/stub/fdopen.c: Likewise. * sysdeps/stub/fexecve.c: Likewise. * sysdeps/stub/flock.c: Likewise. * sysdeps/stub/fork.c: Likewise. * sysdeps/stub/fpathconf.c: Likewise. * sysdeps/stub/fpu_control.h: Likewise. * sysdeps/stub/fstatfs.c: Likewise. * sysdeps/stub/fsync.c: Likewise. * sysdeps/stub/ftruncate.c: Likewise. * sysdeps/stub/fxstat.c: Likewise. * sysdeps/stub/getcwd.c: Likewise. * sysdeps/stub/getdomain.c: Likewise. * sysdeps/stub/getdtsz.c: Likewise. * sysdeps/stub/getegid.c: Likewise. * sysdeps/stub/geteuid.c: Likewise. * sysdeps/stub/getgid.c: Likewise. * sysdeps/stub/getgroups.c: Likewise. * sysdeps/stub/gethostid.c: Likewise. * sysdeps/stub/gethostname.c: Likewise. * sysdeps/stub/getitimer.c: Likewise. * sysdeps/stub/getpeername.c: Likewise. * sysdeps/stub/getpgid.c: Likewise. * sysdeps/stub/getpid.c: Likewise. * sysdeps/stub/getppid.c: Likewise. * sysdeps/stub/getpriority.c: Likewise. * sysdeps/stub/getrlimit.c: Likewise. * sysdeps/stub/getrusage.c: Likewise. * sysdeps/stub/getsid.c: Likewise. * sysdeps/stub/getsockname.c: Likewise. * sysdeps/stub/getsockopt.c: Likewise. * sysdeps/stub/getsysstats.c: Likewise. * sysdeps/stub/gettimeofday.c: Likewise. * sysdeps/stub/getuid.c: Likewise. * sysdeps/stub/gtty.c: Likewise. * sysdeps/stub/if_index.c: Likewise. * sysdeps/stub/init-posix.c: Likewise. * sysdeps/stub/ioctl.c: Likewise. * sysdeps/stub/isatty.c: Likewise. * sysdeps/stub/isfdtype.c: Likewise. * sysdeps/stub/jmp-unwind.c: Likewise. * sysdeps/stub/kill.c: Likewise. * sysdeps/stub/killpg.c: Likewise. * sysdeps/stub/ldbl2mpn.c: Likewise. * sysdeps/stub/link.c: Likewise. * sysdeps/stub/listen.c: Likewise. * sysdeps/stub/lockfile.c: Likewise. * sysdeps/stub/longjmp-ts.c: Likewise. * sysdeps/stub/lseek.c: Likewise. * sysdeps/stub/lxstat.c: Likewise. * sysdeps/stub/machine-lock.h: Likewise. * sysdeps/stub/machine-sp.h: Likewise. * sysdeps/stub/madvise.c: Likewise. * sysdeps/stub/mkdir.c: Likewise. * sysdeps/stub/mkfifo.c: Likewise. * sysdeps/stub/mmap.c: Likewise. * sysdeps/stub/morecore.c: Likewise. * sysdeps/stub/mpn2dbl.c: Likewise. * sysdeps/stub/mpn2flt.c: Likewise. * sysdeps/stub/mpn2ldbl.c: Likewise. * sysdeps/stub/mprotect.c: Likewise. * sysdeps/stub/msgctl.c: Likewise. * sysdeps/stub/msgget.c: Likewise. * sysdeps/stub/msgrcv.c: Likewise. * sysdeps/stub/msgsnd.c: Likewise. * sysdeps/stub/munmap.c: Likewise. * sysdeps/stub/nanosleep.c: Likewise. * sysdeps/stub/nice.c: Likewise. * sysdeps/stub/nlist.c: Likewise. * sysdeps/stub/open.c: Likewise. * sysdeps/stub/opendir.c: Likewise. * sysdeps/stub/pathconf.c: Likewise. * sysdeps/stub/pause.c: Likewise. * sysdeps/stub/pipestream.c: Likewise. * sysdeps/stub/poll.c: Likewise. * sysdeps/stub/profil.c: Likewise. * sysdeps/stub/ptrace.c: Likewise. * sysdeps/stub/putenv.c: Likewise. * sysdeps/stub/read.c: Likewise. * sysdeps/stub/readdir.c: Likewise. * sysdeps/stub/readdir_r.c: Likewise. * sysdeps/stub/readlink.c: Likewise. * sysdeps/stub/reboot.c: Likewise. * sysdeps/stub/recv.c: Likewise. * sysdeps/stub/recvfrom.c: Likewise. * sysdeps/stub/recvmsg.c: Likewise. * sysdeps/stub/remove.c: Likewise. * sysdeps/stub/rename.c: Likewise. * sysdeps/stub/revoke.c: Likewise. * sysdeps/stub/rewinddir.c: Likewise. * sysdeps/stub/rmdir.c: Likewise. * sysdeps/stub/sbrk.c: Likewise. * sysdeps/stub/sched_getp.c: Likewise. * sysdeps/stub/sched_gets.c: Likewise. * sysdeps/stub/sched_primax.c: Likewise. * sysdeps/stub/sched_primin.c: Likewise. * sysdeps/stub/sched_rr_gi.c: Likewise. * sysdeps/stub/sched_setp.c: Likewise. * sysdeps/stub/sched_sets.c: Likewise. * sysdeps/stub/sched_yield.c: Likewise. * sysdeps/stub/seekdir.c: Likewise. * sysdeps/stub/select.c: Likewise. * sysdeps/stub/semctl.c: Likewise. * sysdeps/stub/semget.c: Likewise. * sysdeps/stub/semop.c: Likewise. * sysdeps/stub/send.c: Likewise. * sysdeps/stub/sendmsg.c: Likewise. * sysdeps/stub/sendto.c: Likewise. * sysdeps/stub/setdomain.c: Likewise. * sysdeps/stub/setegid.c: Likewise. * sysdeps/stub/setenv.c: Likewise. * sysdeps/stub/seteuid.c: Likewise. * sysdeps/stub/setgid.c: Likewise. * sysdeps/stub/setgroups.c: Likewise. * sysdeps/stub/sethostid.c: Likewise. * sysdeps/stub/sethostname.c: Likewise. * sysdeps/stub/setjmp.c: Likewise. * sysdeps/stub/setlogin.c: Likewise. * sysdeps/stub/setpgid.c: Likewise. * sysdeps/stub/setpriority.c: Likewise. * sysdeps/stub/setregid.c: Likewise. * sysdeps/stub/setreuid.c: Likewise. * sysdeps/stub/setrlimit.c: Likewise. * sysdeps/stub/setsid.c: Likewise. * sysdeps/stub/setsockopt.c: Likewise. * sysdeps/stub/settimeofday.c: Likewise. * sysdeps/stub/setuid.c: Likewise. * sysdeps/stub/shmctl.c: Likewise. * sysdeps/stub/shmget.c: Likewise. * sysdeps/stub/shutdown.c: Likewise. * sysdeps/stub/sigaction.c: Likewise. * sysdeps/stub/sigaltstack.c: Likewise. * sysdeps/stub/sigblock.c: Likewise. * sysdeps/stub/sigintr.c: Likewise. * sysdeps/stub/sigpending.c: Likewise. * sysdeps/stub/sigprocmask.c: Likewise. * sysdeps/stub/sigreturn.c: Likewise. * sysdeps/stub/sigsetmask.c: Likewise. * sysdeps/stub/sigstack.c: Likewise. * sysdeps/stub/sigsuspend.c: Likewise. * sysdeps/stub/sigvec.c: Likewise. * sysdeps/stub/socket.c: Likewise. * sysdeps/stub/socketpair.c: Likewise. * sysdeps/stub/sstk.c: Likewise. * sysdeps/stub/statfs.c: Likewise. * sysdeps/stub/stdio_init.c: Likewise. * sysdeps/stub/stime.c: Likewise. * sysdeps/stub/stty.c: Likewise. * sysdeps/stub/swapoff.c: Likewise. * sysdeps/stub/swapon.c: Likewise. * sysdeps/stub/symlink.c: Likewise. * sysdeps/stub/sync.c: Likewise. * sysdeps/stub/syscall.c: Likewise. * sysdeps/stub/sysd-stdio.c: Likewise. * sysdeps/stub/system.c: Likewise. * sysdeps/stub/tcdrain.c: Likewise. * sysdeps/stub/tcflow.c: Likewise. * sysdeps/stub/tcflush.c: Likewise. * sysdeps/stub/tcgetattr.c: Likewise. * sysdeps/stub/tcgetpgrp.c: Likewise. * sysdeps/stub/tcsendbrk.c: Likewise. * sysdeps/stub/tcsetpgrp.c: Likewise. * sysdeps/stub/telldir.c: Likewise. * sysdeps/stub/thread_state.h: Likewise. * sysdeps/stub/time.c: Likewise. * sysdeps/stub/times.c: Likewise. * sysdeps/stub/trampoline.c: Likewise. * sysdeps/stub/truncate.c: Likewise. * sysdeps/stub/ttyname.c: Likewise. * sysdeps/stub/ttyname_r.c: Likewise. * sysdeps/stub/ualarm.c: Likewise. * sysdeps/stub/ulimit.c: Likewise. * sysdeps/stub/umask.c: Likewise. * sysdeps/stub/unlink.c: Likewise. * sysdeps/stub/usleep.c: Likewise. * sysdeps/stub/ustat.c: Likewise. * sysdeps/stub/utime.c: Likewise. * sysdeps/stub/utimes.c: Likewise. * sysdeps/stub/vdprintf.c: Likewise. * sysdeps/stub/vhangup.c: Likewise. * sysdeps/stub/wait.c: Likewise. * sysdeps/stub/wait3.c: Likewise. * sysdeps/stub/wait4.c: Likewise. * sysdeps/stub/waitpid.c: Likewise. * sysdeps/stub/write.c: Likewise. * sysdeps/stub/xmknod.c: Likewise. * sysdeps/stub/xstat.c: Likewise. * sysdeps/stub/bits/errno.h: Likewise. * sysdeps/stub/bits/sigcontext.h: Likewise. * sysdeps/unix/fxstat.c: Likewise. * sysdeps/unix/mk-local_lim.c: Likewise. * sysdeps/unix/mkdir.c: Likewise. * sysdeps/unix/nice.c: Likewise. * sysdeps/unix/rmdir.c: Likewise. * sysdeps/unix/stime.c: Likewise. * sysdeps/unix/telldir.c: Likewise. * sysdeps/unix/xstat.c: Likewise. * sysdeps/unix/arm/sysdep.h: Likewise. * sysdeps/unix/bsd/ftime.c: Likewise. * sysdeps/unix/bsd/isatty.c: Likewise. * sysdeps/unix/bsd/setegid.c: Likewise. * sysdeps/unix/bsd/seteuid.c: Likewise. * sysdeps/unix/bsd/setsid.c: Likewise. * sysdeps/unix/bsd/sigaction.c: Likewise. * sysdeps/unix/bsd/sigprocmask.c: Likewise. * sysdeps/unix/bsd/tcgetattr.c: Likewise. * sysdeps/unix/bsd/tcsetattr.c: Likewise. * sysdeps/unix/bsd/times.c: Likewise. * sysdeps/unix/bsd/ulimit.c: Likewise. * sysdeps/unix/bsd/bits/dirent.h: Likewise. * sysdeps/unix/bsd/bsd4.4/tcdrain.c: Likewise. * sysdeps/unix/bsd/bsd4.4/wait.c: Likewise. * sysdeps/unix/bsd/bsd4.4/waitpid.c: Likewise. * sysdeps/unix/bsd/hp/m68k/sysdep.h: Likewise. * sysdeps/unix/bsd/osf/alpha/sysdep.h: Likewise. * sysdeps/unix/bsd/sequent/i386/sysdep.h: Likewise. * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise. * sysdeps/unix/bsd/sun/m68k/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise. * sysdeps/unix/bsd/sun/m68k/bits/sigcontext.h: Likewise. * sysdeps/unix/bsd/sun/sparc/sigtramp.c: Likewise. * sysdeps/unix/bsd/sun/sparc/bits/sigcontext.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/mmap.c: Likewise. * sysdeps/unix/bsd/sun/sunos4/speed.c: Likewise. * sysdeps/unix/bsd/ultrix4/sysconf.c: Likewise. * sysdeps/unix/bsd/ultrix4/bits/posix_opt.h: Likewise. * sysdeps/unix/bsd/ultrix4/mips/bits/sigcontext.h: Likewise. * sysdeps/unix/bsd/vax/sysdep.h: Likewise. * sysdeps/unix/common/lxstat.c: Likewise. * sysdeps/unix/common/tcsendbrk.c: Likewise. * sysdeps/unix/common/bits/dirent.h: Likewise. * sysdeps/unix/i386/sysdep.h: Likewise. * sysdeps/unix/mips/sysdep.h: Likewise. * sysdeps/unix/sysv/setrlimit.c: Likewise. * sysdeps/unix/sysv/settimeofday.c: Likewise. * sysdeps/unix/sysv/sigaction.c: Likewise. * sysdeps/unix/sysv/sysv_termio.h: Likewise. * sysdeps/unix/sysv/tcdrain.c: Likewise. * sysdeps/unix/sysv/tcflow.c: Likewise. * sysdeps/unix/sysv/tcflush.c: Likewise. * sysdeps/unix/sysv/tcgetattr.c: Likewise. * sysdeps/unix/sysv/tcsendbrk.c: Likewise. * sysdeps/unix/sysv/tcsetattr.c: Likewise. * sysdeps/unix/sysv/bits/dirent.h: Likewise. * sysdeps/unix/sysv/irix4/getpriority.c: Likewise. * sysdeps/unix/sysv/irix4/setpriority.c: Likewise. * sysdeps/unix/sysv/irix4/bits/confname.h: Likewise. * sysdeps/unix/sysv/linux/adjtime.c: Likewise. * sysdeps/unix/sysv/linux/dl-sysdep.c: Likewise. * sysdeps/unix/sysv/linux/gethostname.c: Likewise. * sysdeps/unix/sysv/linux/if_index.c: Likewise. * sysdeps/unix/sysv/linux/ptrace.c: Likewise. * sysdeps/unix/sysv/linux/reboot.c: Likewise. * sysdeps/unix/sysv/linux/speed.c: Likewise. * sysdeps/unix/sysv/linux/sysctl.c: Likewise. * sysdeps/unix/sysv/linux/tcdrain.c: Likewise. * sysdeps/unix/sysv/linux/ulimit.c: Likewise. * sysdeps/unix/sysv/linux/waitpid.c: Likewise. * sysdeps/unix/sysv/linux/alpha/sysdep.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/linux/alpha/bits/signum.h: Likewise. * sysdeps/unix/sysv/linux/i386/profil-counter.h: Likewise. * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise. * sysdeps/unix/sysv/minix/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/sco3.2.4/bits/confname.h: Likewise. * sysdeps/unix/sysv/sco3.2.4/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/sysv4/sigaction.c: Likewise. * sysdeps/unix/sysv/sysv4/siginfo.h: Likewise. * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise. * sysdeps/unix/sysv/sysv4/sysconfig.h: Likewise. * sysdeps/unix/sysv/sysv4/waitpid.c: Likewise. * sysdeps/unix/sysv/sysv4/bits/sigaction.h: Likewise. * sysdeps/unix/sysv/sysv4/i386/sysdep.h: Likewise. * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h: Likewise. * sysdeps/vax/fl.h: Likewise. * sysdeps/vax/setjmp.c: Likewise. 1997-06-21 16:58 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * stdlib/strtod.c (INTERNAL (STRTOF)): Fix recognition of Infinity and NaN strings. 1997-06-20 21:52 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/m68k/fpu/bits/mathinline.h (__scalbn): Fix type of second argument. (__ilogb): Remove special case for zero, add stupid special case for NaN. (__ieee754_scalb): Remove definition. * sysdeps/m68k/fpu/mathbits.h (FP_ILOGB0, FP_ILOGBNAN): Define. * sysdeps/m68k/fpu/s_scalbn.c: Fix type of second argument. * sysdeps/m68k/fpu/e_scalb.c: Rewritten. * sysdeps/m68k/fpu/e_scalbf.c: Adapted. * sysdeps/m68k/fpu/e_scalbl.c: Adapted. * sysdeps/libm-ieee754/e_scalb.c: Raise no exceptions when returning NaN. Handle zero specially. * sysdeps/libm-ieee754/e_scalbf.c: Likewise. * sysdeps/libm-ieee754/e_scalbl.c: Likewise. * math/libm-test.c (ilogb_test): Don't require exceptions for zero and NaN. (gamma_test): Use different argument when checking whether function is implemented. (scalb_test): Remove duplicate tests. 1997-06-03 15:59 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules (+depfiles): Add dependencies for $(test-srcs). (distinfo-vars): Add test-srcs.
1996-05-04Sat May 4 05:44:25 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>Roland McGrath
* hurd/hurd-raise.c (_hurd_raise_signal): Pass sigcode in msg_sig_post rpc. * hurd/hurdmsg.c (_S_msg_set_environment): Use argz.h functions instead of _hurd_split_args. (_S_msg_*_exec_flags): Functions removed. (_S_msg_startup_dosync): Stub removed. Sat May 4 02:11:55 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> * sysdeps/mach/hurd/ptrace.c: Set _hurdsig_traced instead of EXEC_TRACED bit in _hurd_exec_flags. Pass sigcode arg in msg_sig_post_untraced rpc. * sysdeps/mach/hurd/access.c: Don't pass io port in auth_user_authenticate rpc. * posix/sched.h: Fix typos. * sysdeps/mach/hurd/fork.c: Use new critical section lock. Clear _hurdsig_traced instead of EXEC_TRACED. * sysdeps/stub/nanosleep.c (nanosleep): Fix typo. * wcsmbs/wcstol.c: Find strtol.c in ../stdlib. * wcsmbs/wcstof.c: Find strtod.c in ../stdlib. * wcsmbs/wcstod.c: Likewise. * wcsmbs/wcstold.c: Likewise. * wcsmbs/wcwidth.h: Find cname-lookup.h in ../wctype. * string/envz.c (envz_entry): Use const. (envz_get, envz_remove): Likewise. (envz_entry): Return char *, not const char *. * string/envz.h: Fix decl. * string/argz-create.c: Use const in prototype. * string/argz-next.c: Likewise. * sysdeps/mach/hurd/sigprocmask.c: Pass sigcode arg to msg_sig_post. * sysdeps/mach/hurd/i386/sigreturn.c: Likewise. * sysdeps/mach/hurd/sigsuspend.c: Likewise. * sysdeps/mach/hurd/kill.c: Likewise. * hurd/hurdexec.c (_hurd_exec): Use new critical section lock. * hurd/catch-exc.c (_S_catch_exception_raise): Likewise. * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Likewise. * hurd/thread-cancel.c (hurd_thread_cancel, hurd_check_cancel): Likewise. * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise. * sysdeps/mach/hurd/sigaction.c: Likewise. * sysdeps/mach/hurd/errnos.awk: Don't use ARGV in comment; it can change meaninglessly. * hurd/hurd/signal.h (struct hurd_sigstate): Replace critical section flag with a spin lock. (_hurd_critical_section_lock): Use spin_try_lock on that to see if we get it. No need to take SS->lock at all. (_hurd_critical_section_unlock): Unlock SS->critical_section_lock instead of clearing the old flag member. * hurd/hurdsig.c (_hurd_internal_post_signal): Use spin_lock_locked to test the critical section state. * hurd/hurdinit.c (_hurd_init): Set _hurdsig_traced from the intarray. * hurd/hurdkill.c (_hurd_sig_post): Pass 0 sigcode in msg_sig_post. * hurd/hurdsig.c (_hurd_internal_post_signal): Test _hurdsig_traced instead of testing (_hurd_exec_flags & EXEC_TRACED). (_S_msg_sig_post): Take sigcode arg and pass it through. (_S_msg_sig_post_untraced): Likewise. (reauth_proc): Don't pass proc port in auth_user_authenticate. * hurd/setauth.c (_hurd_setauth): Don't pass object ports in auth_user_authenticate RPCs, just the one-off rendezvous port. * hurd/dtable.c (reauth_dtable): Likewise. * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Likewise. * hurd/hurdexec.c (_hurd_exec): Pass 0 flags to file_exec. Pass sigcode arg to msg_sig_post. * string/argz.h (argz_create): Use const in prototype. * hurd/hurdinit.c (_hurd_proc_init): Test _hurdsig_traced instead of testing (_hurd_exec_flags & EXEC_TRACED). Pass sigcode arg to msg_sig_post. * hurd/hurd.h: Declare _hurdsig_traced. * string/argz.h (__argz_next): Cast ENTRY before returning it. * hurd/hurd/signal.h (_hurd_critical_section_unlock): Pass sigcode arg to msg_sig_post. * hurd/path-lookup.c: New file. * hurd/Makefile (routines): Add path-lookup. * hurd/hurd/lookup.h: Declare file_name_path_scan, hurd_file_name_path_lookup. * hurd/hurd.h: Declare file_name_path_lookup. * sysdeps/mach/hurd/select.c: The io_select rpc no longer has a TAG_ID argument. Instead, use a separate reply port for each RPC and put them all in a port set to wait for slow replies.
1996-04-07Sun Apr 7 10:37:30 1996 Roland McGrath <roland@whiz-bang.gnu.ai.mit.edu>cvs/libc-960408Roland McGrath
* sysdeps/mach/hurd/fork.c: Don't leak send rights to the child's proc port in the parent. Fri Apr 5 17:43:41 1996 Miles Bader <miles@gnu.ai.mit.edu>
1996-02-08Wed Feb 7 18:48:30 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/hurdmsg.c (_S_msg_report_wait): Function removed. * hurd/report-wait.c: New file. * hurd/Makefile (routines): Added report-wait. * sysdeps/mach/hurd/Makefile (inhibit-unix-syscalls): New variable. * sysdeps/mach/hurd/i386/intr-msg.h (struct mach_msg_trap_args): New type. (SYSCALL_EXAMINE, MSG_EXAMINE): New inline functions. * sysdeps/mach/hurd/i386/trampoline.c (struct mach_msg_trap_args): Structure moved to intr-msg.h; include that. * time/Makefile (CFLAGS-ialloc.c): Add -Wno-unused. (CFLAGS-scheck.c): New variable. * sysdeps/mach/hurd/dl-sysdep.c (__hurd_sigthread_stack_base, __hurd_sigthread_stack_end, __hurd_sigthread_variables, __hurd_threadvar_stack_mask): New variables. * sysdeps/mach/hurd/fork.c: Set the new task's exception port to its new message port. * misc/init-misc.c: Put __init_misc in the __libc_subinit set. * configure.in (uname): Add quoting. * sysdeps/mach/hurd/fchdir.c: Don't consult errno unless lookup fails. * hurd/fchroot.c: Likewise. * posix/sys/types.h [GCC >= 2.7]: Define intN_t/u_intN_t using __attribute__ ((__mode__ (__XX__))). Wed Feb 7 03:24:05 1996 Torbjorn Granlund <tege@tmg.se> * sysdeps/i386/i586/memcopy.h (WORD_COPY_FWD): Manually allocate destination cache lines. (WORD_COPY_BWD): Likewise. Wed Feb 7 14:16:36 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/generic/Makefile (make_siglist): Get signum.h absolute file name first thing, before $(native-compile) changes directories. From Gord Matzigkeit <gord@enci.ucalgary.ca>: * sysdeps/unix/make_errlist.c: Use strerror if available. * sysdeps/unix/configure.in: New file * sysdeps/unix/bsd/sun/syscalls.list: Added sigvec. * sysdeps/unix/bsd/sun/sigvec.S: File removed. * sysdeps/stub/sendto.c: Make sockaddr arg pointer to const. * sysdeps/stub/connect.c: Likewise. * sysdeps/stub/bind.c: Likewise. * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): RETRYNAME of "" is only special for FS_RETRY_NORMAL; for FS_RETRY_REAUTH, do another dir_lookup of "".
1996-02-02Updated from ../gpl2lgpl.sed /home/gd/gnu/lib/getopt.cRoland McGrath
1996-01-04Rewritten.cvs/libc-960103Roland McGrath
1995-12-22Peek __mach_task_self_ value before proc_dostop call to work around kernel ↵Roland McGrath
paging bug.
1995-08-17Thu Aug 17 16:18:38 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/intr-msg.c: Use INTR_MSG_TRAP macro from machine-dependent "intr-msg.h" for special syscall code, instead of i386-specific asm. * hurd/hurdsig.c: Use INTR_MSG_BACK_OUT macro from machine-dependent "intr-msg.h" before mutating thread state to skip RPC. * sysdeps/mach/hurd/i386/trampoline.c: If PC is inside _hurd_intr_rpc_mach_msg special syscall code, use real SP saved in %ecx. * Makeconfig (link-libc): New variable; use shared library if available. (+link): Use it. * sysdeps/mach/hurd/fork.c (_hurd_fork_locks): Variable removed. Instead, declare with `symbol_set_declare'. (fork): Use symbol_set_* macros for _hurd_fork_locks. Use SS->thread instead of __mach_thread_self (). Suspend all other threads during task_create and port copying.
1995-08-14Mon Aug 14 16:51:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/thread-cancel.c: New file. * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): In rpc_wait case, frob mach_msg args to set timeout on receive. (_hurdsig_rcv_interrupted_p): Function removed. * sysdeps/mach/hurd/alpha/trampoline.c: Likewise. * sysdeps/mach/hurd/hppa/trampoline.c: Likewise. * sysdeps/mach/hurd/mips/trampoline.c: Likewise. * hurd/intr-msg.c: New file. * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel'. (_hurdsig_rcv_interrupted_p): Declaration removed. (HURD_EINTR_RPC): Macro removed. (_hurd_longjmp_thread_state, _hurd_interrupted_rpc_timeout): Declare these. * hurd/intr-rpc.h: New file. * hurd/intr-rpc.defs: Just import intr-rpc.h. * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): New variable. (interrupted_reply_port_location): Take new flag arg; only catch faults if it's set. (abort_rpcs): Rename to _hurdsig_abort_rpcs; take same new flag arg. No longer use _hurdsig_rcv_interrupted_p; instead compare PC to &_hurd_intr_rpc_msg_in_trap. If before it, mutate state to simulate MACH_SEND_INTERRUPTED return; on it, interrupt the operation. All callers changed. * hurd/hurd.h (hurd_thread_cancel, hurd_check_cancel): Declare these. * hurd/Makefile (distribute): Remove intr-rpc.awk. (sig): Add thread-cancel. (transform-user-stub, transform-user-stub-output): Variables removed. * sysdeps/mach/hurd/dl-sysdep.c: Change all RPCs from `__hurd_intr_rpc_*' to `__*'. (_hurd_intr_rpc_mach_msg): New function. (_hurd_thread_sigstate): Function removed. * sysdeps/mach/hurd/ioctl.c: Use _hurd_intr_rpc_mach_msg function, instead of __mach_msg inside HURD_EINTR_RPC macro. * sysdeps/generic/morecore.c [__GNU_LIBRARY__]: Declare `__sbrk' to take ptrdiff_t arg. * sysdeps/mach/hurd/fork.c: Remove _hurd_longjmp_thread_state decl. * sysdeps/mach/hurd/kill.c (kill_pid): Don't make `inline'. * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_symbol, weak_alias): Use `extern' storage class.
1995-04-24Sat Apr 22 14:48:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* mach/Machrules [interface-library] (LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to -nostdlib. * sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed. Lock _hurd_siglock only around initial task creation in parent. Use _hurd_critical_section_unlock at end. Handle dead name rights properly, and deal with a send right dying while we try to copy it. For the time being, use assert_perror for kernel and proc RPC failures. Fri Apr 21 01:10:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * extra-lib.mk: Don't include $(o-iterator); construct it by hand using $(object-suffixes-$(lib)) instead. * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable. * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so). (LDFLAGS-c.so): New variable. * resolv/res_init.c (res_init): Don't clobber _res.options with RES_DEFAULT. If RES_INIT is clear, OR in RES_DEFAULT. * hurd/hurd.h: Declare _hurd_startup. * hurd/hurdstartup.c: New file. * hurd/Makefile (routines): Add hurdstartup.
1995-02-18initial importRoland McGrath