summary refs log tree commit diff
path: root/hurd
Commit message (Collapse)AuthorAgeFilesLines
* Mon Aug 14 16:51:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-08-148-162/+385
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* Remove _hurd_longjmp_thread_state decl.Roland McGrath1995-08-081-3/+0
|
* Wed Jun 14 03:45:24 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-06-142-1/+15
| | | | | | | | | | | | | | | | * stdio/stdio.h (__validfp): Use ({...}) rather than a comma expression, to avoid gcc's "value computed is not used" warning. * libc-symbols.h (_elf_set_element): Give the set-element variable an `unused' attribute. * hurd/hurd/threadvar.h (__hurd_threadvar_location): Declare with __attribute__ ((__const__)). * hurd/hurd/signal.h (_hurd_self_sigstate): Likewise. * hurd/hurd/userlink.h (_hurd_userlink_link): Properly set LINK->resource.next->resource.prevp when appropriate, not LINK->resource.next->thread.prevp!!!
* (_hurd_userlink_link): Properly set LINK->resource.next->resource.prevp when ↵Roland McGrath1995-06-141-1/+1
| | | | appropriate, not LINK->resource.next->thread.prevp!!!
* Thu Jun 8 02:50:26 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-06-081-22/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function. * hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr and user entry point addresses. * elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null. (_dl_map_object): DT_RPATH value is relative to DT_STRTAB value. * Makerules (install-lib.so): Don't include libc.so. [$(build-shared)=yes] (install): Depend on the installed libc.so file. [$(build-shared)=yes] (install-no-libc.a): Make this, rather than install, depend on the installed $(install-lib.so) files. [$(build-shared)=yes] (install-lib.so): Append libc.so after that rule. * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to allocate high addresses to avoid random mappings appearing there. (mmap): Comment out mask; always pass zero. Tue Jun 6 13:34:53 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro. * sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call. * elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME when successful. * sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable. (__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these variables, using the `threadvars' buffer. * elf/dl-reloc.c: Don't dereference L->l_prev when it's null. * sysdeps/i386/dl-runtime.c: Likewise. * elf/rtld.c (dl_main): Add missing NULL terminating argument in _dl_sysdep_fatal call. (__assert_fail): Likewise. * locale/Makefile (localedef-modules): Renamed ctype to locale-ctype so as not to conflict with the object file for ctype/ctype.c in the build directory. * sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is lt_interpreter, first undo relocation done during bootstrapping.
* Sun Jun 4 22:14:11 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-06-053-1/+32
| | | | | | | | | | | | * hurd/Makefile (sig): Added thread-self. * hurd/hurd.h: Declare hurd_thread_self. * hurd/thread-self.c: New file. Thu Jun 1 12:17:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * elf/rtld.c: Initialize RTLD_MAP.l_type. * elf/dl-reloc.c (_dl_relocate_object): Clear LAZY if relocating the dynamic linker itself.
* Fri May 26 13:00:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-05-271-55/+69
| | | | | | | | | | | | * hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check pending signals if the thread is in a critical section. It will send us a msg when it finishes. * sysdeps/mach/hurd/pathconf.c: New file. * sysdeps/mach/hurd/fpathconf.c: New file. * sysdeps/mach/hurd/sigaction.c: Only notify the proc server for SIGCHLD when the SA_NOCLDSTOP bit actually changes.
* Fri May 19 17:16:46 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-05-201-20/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle args on stack from kernel. * posix/Makefile, sysdeps/alpha/Makefile, * sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile, * Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail in the absence of CVS dirs. * hurd/hurdstartup.c: Don't call __mach_init. Grok args from the kernel on the stack properly. * set-init.c: Never call _init/_fini; just run __libc_subinit. * Makerules (LDFLAGS-c.so): Add -nostartfiles. * mach/Machrules (LDFLAGS-$(interface.so)): Likewise. * configure.in: Move defaulting of --with-elf and --with-gnu-* based on host os outside the AC_CACHE_VAL for the sysdirs calculation. * Makeconfig (localedir, nlsdir): New variables. * values.h: New file. * Makefile (headers): Add values.h. * locale/Makefile (distribute): Add error.h. * locale/localedef.c: Include "error.h". (main): Use error_message_count instead of warning_cntr.
* (_hurd_alloc_fd): Don't reduce FIRST_FD in the case where it starts out less ↵Roland McGrath1995-05-121-2/+3
| | | | than _hurd_dtablesize.
* (_hurd_alloc_fd): When expanding the dtable, make sure the new size exceeds ↵Roland McGrath1995-05-121-6/+9
| | | | FIRST_FD.
* Wed May 10 21:00:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-05-111-156/+86
| | | | | | | | * sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro. * Makerules (install-lib.so): Add %.so for each %_pic.a. * sysdeps/mach/hurd/i386/init-first.c: New file.
* (__data_start): Define this symbol as the first thing in .data.Roland McGrath1995-05-091-0/+63
|
* Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-05-081-27/+86
| | | | | | | | | | | | | | | | | | | | | | * Makeconfig (+gccwarn): Add -Winline. * hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is set, avoid abort_rpcs, and use reply and intr ports saved in SS->context. * sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port from SS->context. Don't clear SS->context. * sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when setting SS->context. If msg_sig_post returns, re-lock and clear SS->context. Fri May 5 10:37:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * mach/Makefile (errsystems.c): Comment out generation rule. * sysdeps/mach/_strerror.c: Consider a system unknown if its bad_sub member is null. * mach/mig-alloc.c: Add weak alias to non-__ name.
* Wed May 3 11:56:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-05-043-24/+4
| | | | | | | | | | | | | | | | | | | | | | | * sysdeps/mach/hurd/dup2.c: Fixed broken test in last change. * elf/dl-error.c (_dl_catch_error): Actually call the OPERATE function. Duh. * hurd/Makefile (distribute): Added hurdstartup.h. * hurd/hurd.h: Remove _hurd_startup decl. * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__ ((__unused__)) instead of gratuitous self reference. * sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the table if FD2 doesn't fit. * sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit, not the current table size. * sysdeps/i386/init-first.c: New file. * sysdeps/stub/init-first.c: New file.
* Fixed _hurd_startup prototype.Roland McGrath1995-04-271-1/+4
|
* Sat Apr 22 14:48:03 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-04-243-1/+321
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* * hurd/hurdsig.c: Use assert_perror for many calls which shouldRoland McGrath1995-04-211-15/+34
| | | | never fail and previously were not checked.
* * hurd/hurdinline.c: Include signal.h first, so we don't defineRoland McGrath1995-04-061-1/+2
| | | | | | | | | | its inlines too. * sysdeps/unix/sysv/sysv4/sigset.h (__sigfillset): Use ~0L instead of -1 to avoid compiler warning. * configure.in (host_os=linux*): Set elf=yes for this, not just linux*elf*.
* Sun Apr 2 13:13:52 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-04-022-1/+136
| | | | | | | | | | | | | | | * sysdeps/mach/hurd/i386/trampoline.c: Add a link to SS->active_resources, so that _hurdsig_longjmp_from_handler will be called when a longjmp unwinds the signal frame. * sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the SS->active_resources chain added by _hurd_setup_sighandler. * hurd/sigunwind.c: New file. * hurd/Makefile (sig): Add sigunwind. * Makerules (lib%.so: lib%_pic.a): Remove dir name from $*. * MakeTAGS (tags-sources): Include $(all-dist). [subdir] (all-dist): Define to $(distribute).
* * Make-dist (README): Commit it to CVS if there is a CVS directory.Roland McGrath1995-03-291-0/+1
|
* Mon Mar 27 02:23:15 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-03-275-31/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * posix/unistd.h [__USE_BSD] (ttyslot): Declare it. * posix/unistd.h [__USE_BSD] (L_SET, L_INCR, L_XTND): Define unless L_SET already defined. * misc/sys/file.h (L_SET, L_INCR, L_XTND): Don't define if L_SET already defined. Incorporated -lutil library from 4.4-Lite. * misc/Makefile (extra-libs, libutil-routines): New variables. * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c, sysdeps/generic/pty.c: New files for -lutil incorporated from 4.4-Lite. Support simple, light-weight unwind-protect mechanism for longjmp. * setjmp/longjmp.c: Call _longjmp_unwind first thing. * sysdeps/mach/hurd/jmp-unwind.c: New file. * sysdeps/stub/jmp-unwind.c: New file. * sysdeps/i386/jmp_buf.h (_JMPBUF_UNWINDS): New macro. * sysdeps/mips/jmp_buf.h (_JMPBUF_UNWINDS): New macro. * setjmp/Makefile (routines): Add jmp-unwind. * hurd/hurd/userlink.h (struct hurd_userlink): Move `next' and `prevp' members into new substructure `resource'; add another such substructure `thread' and members `cleanup' (function ptr) and `cleanup_data' (generic ptr). (_hurd_userlink_link, _hurd_userlink_unlink): Insert/remove LINK into the `_hurd_self_sigstate ()->active_resources' list via the `thread' substructure. * hurd/hurd/port.h (_hurd_port_cleanup): Declare it. (_hurd_port_locked_get): Set LINK->cleanup to _hurd_port_cleanup and LINK->cleanup_data' to the port extracted. * hurd/hurd/signal.h (struct hurd_sigstate): New member `active_resources'. * hurd/port-cleanup.c: New file. * hurd/Makefile (routines): Add port-cleanup. * malloc/malloc.c: Include errno.h. Sat Mar 25 18:24:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * locale/loadlocale.c (_nl_load_locale): Avoid */ inside comment.
* Mon Mar 20 03:19:23 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-03-2011-18/+17
| | | | | | | | | | | * stdio/vfscanf.c (%n): Use READ_IN - 1, so as not to count the read-ahead character. * hurd/dtable.c, hurd/getdport.c, hurd/hurd.h, hurd/hurdexec.c, hurd/hurdinit.c, hurd/hurdprio.c, hurd/hurdsock.c, hurd/ports-get.c, hurd/ports-set.c, hurd/setauth.c, hurd/setuids.c, sysdeps/mach/hurd/i386/trampoline.c: Get anal with unsigned to pacify compiler.
* Thu Mar 16 00:04:41 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-03-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * locale/C-ctype.c: New correct data generated by drepper. * Rules: Don't use $(libc.a). Parsing of grouped numbers contributed by Ulrich Drepper. * stdlib/strtol.c (__strtol_internal): Renamed from strtol. Take new flag arg; if nonzero, parse locale-dependent thousands grouping and interpret only the prefix that is correctly grouped. (strtol): Define this to call _strtol_internal with zero for the flag. Use a weak symbol for the definition. * stdlib/strtod.c (strtod, __strtod_internal): Likewise. Check for the exponent of the number overflowing the float format. * stdlib/stdlib.h (__strtof, __strtold): Declarations removed. (__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions. [__OPTIMIZE__]: Define inline functions calling those. * stdlib/grouping.h: New file, written by drepper. * stdlib/Makefile (distribute): Add grouping.h. * stdio/vfscanf.c: Grok %' modifier to numeric conversions. Call __strtoX_internal with the grouping flag set iff the modifier is present. Wed Mar 15 00:40:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h. * mach/Machrules: Produce static deps for all object flavors. [interface-library]: Remove all these variables and rules. ($(interface-library)-routines): Define this variable. (extra-libs): Append $(interface-library) to this. * mach/Makefile (interface-library): Omit .a suffix. * hurd/Makefile: Likewise. Tue Mar 14 23:40:31 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out early if no new data in buffer after priming. * Makerules (object-suffixes, libtypes): Move all these variables to Makeconfig. * Makeconfig (object-suffixes, libtypes): Moved here from Makerules. * Makerules (build-extra-lib): New canned sequence. * sysdeps/mach/hurd/euidaccess.c: Include fcntl.h. Declare ERR; fix uses of FILE and PORT. Remove bogus weak alias for `access'. * sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h. Add missing semicolon. * sysdeps/mach/hurd/opendir.c: Include hurd/fd.h. Use a `struct hurd_fd *' temp var, since DIRP->__fd is a `void *'. * sysdeps/mach/hurd/readdir.c: Include hurd/fd.h. * stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the locale data format is implemented. * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Pass &__sigreturn on the stack to the trampoline code, so it is not position-dependent. * stdio/printf_fp.c (NDEBUG): Define this to disable assert. Don't include <stdarg.h>. (__printf_fp): Last arg ARGS is now `const void **const'; dereference ARGS[0] instead of using va_arg. * locale/setlocale.c: In LC_ALL case, initialize CATEGORY before loop to install data. * locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX to extract number from item code. (_nl_load_locale): Close the descriptor when finished. * malloc/realloc.c (_realloc_internal): Call _malloc_internal in place of malloc. * time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
* * hurd/hurdsig.c (_hurd_internal_post_signal): Ignore preempterRoland McGrath1995-02-221-1/+1
| | | | elts with null handlers.
* Tue Feb 21 21:53:30 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-02-221-9/+1
| | | | | | | * sysdeps/sparc/Makefile [subdir=crypt] (crypt): Reset only if set to original value of `crypt'. * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile [subdir=crypt] (crypt): New variable, set to crypt.solar.
* initial importRoland McGrath1995-02-1866-0/+7738