diff options
author | Philip Guenthe <guenther@cvs.openbsd.org> | 2011-04-18 21:44:57 +0000 |
---|---|---|
committer | Philip Guenthe <guenther@cvs.openbsd.org> | 2011-04-18 21:44:57 +0000 |
commit | bce64c2a24fb4484b18813bef367dcc71e8a0dd0 (patch) | |
tree | dfc7f71507d6c603255802772ca128609460ca08 /lib | |
parent | fd1b35e57ce1fdce5ec1dc979ff36b7649cab0c5 (diff) |
Revert the sigacts diff: NFS can apparently retain pointers to processes
until they're zombies and then send them signals (for intr mounts). Until
that is untangled, the sigacts change is unsafe. sthen@ was the victim
for this one
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libkvm/kvm_proc2.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/lib/libkvm/kvm_proc2.c b/lib/libkvm/kvm_proc2.c index d7b485af1a2..ec6bb0e52fe 100644 --- a/lib/libkvm/kvm_proc2.c +++ b/lib/libkvm/kvm_proc2.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kvm_proc2.c,v 1.6 2011/04/15 17:58:25 guenther Exp $ */ +/* $OpenBSD: kvm_proc2.c,v 1.7 2011/04/18 21:44:55 guenther Exp $ */ /* $NetBSD: kvm_proc.c,v 1.30 1999/03/24 05:50:50 mrg Exp $ */ /*- * Copyright (c) 1998 The NetBSD Foundation, Inc. @@ -77,7 +77,6 @@ #include <sys/stat.h> #include <sys/ioctl.h> #include <sys/tty.h> -#include <sys/signalvar.h> #include <stddef.h> #include <stdlib.h> #include <string.h> @@ -114,7 +113,6 @@ kvm_proclist(kvm_t *kd, int op, int arg, struct proc *p, struct process process, process2; struct pgrp pgrp; struct tty tty; - struct sigacts sa, *sap; struct vmspace vm, *vmp; struct plimit limits, *limp; struct pstats pstats, *ps; @@ -190,16 +188,6 @@ kvm_proclist(kvm_t *kd, int op, int arg, struct proc *p, } else leader_pid = 0; - if (proc.p_sigacts) { - if (KREAD(kd, (u_long)proc.p_sigacts, &sa)) { - _kvm_err(kd, kd->program, "can't read sigacts at %x", - proc.p_sigacts); - return (-1); - } - sap = &sa; - } - else - sap = NULL; switch (op) { case KERN_PROC_PID: @@ -278,7 +266,7 @@ kvm_proclist(kvm_t *kd, int op, int arg, struct proc *p, #define do_copy_str(_d, _s, _l) kvm_read(kd, (u_long)(_s), (_d), (_l)-1) FILL_KPROC(&kp, do_copy_str, &proc, &process, &pcred, &ucred, - &pgrp, p, proc.p_p, &sess, vmp, limp, ps, sap); + &pgrp, p, proc.p_p, &sess, vmp, limp, ps); #undef do_copy_str /* stuff that's too painful to generalize into the macros */ |