aboutsummaryrefslogtreecommitdiff
path: root/hurd/hurdsig.c
AgeCommit message (Collapse)Author
1996-01-04Wed Jan 3 20:23:42 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>cvs/libc-960104Roland McGrath
* hurd/catch-signal.c: New file. * hurd/intr-msg.c: When restarting RPC, fetch a new reply port. * hurd/hurdsig.c: Use new hurdfault.h interface. (abort_all_rpcs): Mutate return value to EINTR in threads whose replies we will wait for. * hurd/hurdkill.c (_hurd_sig_post): When doing pgrp, make sure we do ourselves last. Wed Jan 3 19:17:10 1996 Miles Bader <miles@gnu.ai.mit.edu> * sysdeps/mach/hurd/access.c (__access): Put the uid/gid arguments to auth_makeauth() in the right order. Wed Jan 3 17:19:04 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/generic/strsep.c: Rewritten. * sysdeps/mach/hurd/fork.c: Use a different workaround for the suspended page fault deadlock kernel bug: thread_abort our signal thread first thing after proc_dostop. * sysdeps/mach/hurd/setgid.c: Rewrote gid frobnication to recognize rootness properly. * hurd/hurdsig.c: Use new signal preemption interface.
1996-01-04Rewritten.cvs/libc-960103Roland McGrath
1995-12-14(_hurd_internal_post_signal: suspend): Reply after aborting RPCs but before ↵Roland McGrath
calling proc_mark_stop.
1995-11-22Tue Nov 21 14:12:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>cvs/libc-951122Roland McGrath
* malloc/malloc.c (align): Don't check contiguity and call abort. * hurd/hurdsig.c (post_reply): Function removed. (abort_thread, abort_all_rpcs, _hurdsig_abort_rpcs): Don't call it. Take single callback fn arg instead of reply port and type. (_hurd_internal_post_signal): Callers changed. Cache reply stub fn ptr in local var before UNTRACED might be changed. * sysdeps/mach/hurd/mmap.c: Cope with a null write memobj for PROT_READ|PROT_WRITE copy mapping. Pass a proper vm_inherit_t to vm_map. * elf/rtld.c (_dl_start): For --list, do output and exit before relocating.
1995-11-18Fri Nov 17 17:57:00 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>cvs/libc-951119cvs/libc-951118Roland McGrath
* sysdeps/generic/Makefile (make_siglist): Add missing backslash. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): New function. * hurd/hurdfault.c: Replace __libc_fatal calls with assert_perror. (_hurdsig_fault_init): Remove #if 0 from setting exception port. Insert send right for SIGEXC before thread_set_special_port. * hurd/hurdsig.c: Replace __libc_fatal calls with assert_perror. (_hurdsig_init): Remove #if 0 from setting exception port. * sysdeps/mach/hurd/ptrace.c (ptrace: PTRACE_CONT): Use HURD_MSGPORT_RPC macro.
1995-11-10Fri Nov 10 14:15:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO == 0, skip straight to pending check. When UNTRACED, resume process from suspension first. * intl/Makefile (headers): New variable, libintl.h. [gettext-srcdir]: New rules to copy source from $(gettext-srcdir)/intl. * configure.in: Check for --with-gettext arg. Fri Nov 10 13:51:30 1995 Richard Stallman <rms@gnu.ai.mit.edu> * malloc/malloc.c (get_contiguous_space): New function. (morecore): Rewrite allocating new malloc info table. (_malloc_internal): Use get_contiguous_space. Fri Nov 10 13:03:40 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * hurd/hurdexec.c (_hurd_exec): If exec'ing self, pass _hurd_msgport to be destroyed. * Makerules (installed-libcs): Filter out %_pic.a. * hurd/hurdinit.c (_hurd_proc_init): When traced, use msg_sig_post to our msgport to take SIGTRAP, instead of _hurd_raise_signal. * hurd/Makefile (user-interfaces): Add hurd/process_request.
1995-09-17Fri Sep 15 21:34:28 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/hurdsig.c: Include <hurd/crash.h> in place of <hurd/core.h>. (write_corefile): Call __crash_dump_task instead of __core_dump_task. Use envariable CRASHSERVER instead of CORESERVER. * hurd/Makefile (user-interfaces): Replace hurd/core with hurd/crash.
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-17Wed Aug 16 17:04:26 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* hurd/intr-msg.c: Fixed calculation of syscall %esp. Tue Aug 15 12:26:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * hurd/hurdsig.c (_hurdsig_abort_rpcs): Remove `static'. * hurd/Makefile (sig): Add intr-msg.
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-05-27Fri May 26 13:00:08 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* 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.
1995-05-08Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath
* 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.
1995-04-21* hurd/hurdsig.c: Use assert_perror for many calls which shouldRoland McGrath
never fail and previously were not checked.
1995-02-22* hurd/hurdsig.c (_hurd_internal_post_signal): Ignore preempterRoland McGrath
elts with null handlers.
1995-02-18initial importRoland McGrath