diff options
Diffstat (limited to 'lib/libkvm/kvm_proc.c')
| -rw-r--r-- | lib/libkvm/kvm_proc.c | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/lib/libkvm/kvm_proc.c b/lib/libkvm/kvm_proc.c index 47773e7b4f6b..c26e680b79a0 100644 --- a/lib/libkvm/kvm_proc.c +++ b/lib/libkvm/kvm_proc.c @@ -599,23 +599,13 @@ kvm_doargv(kd, kp, nchr, info) register char **ap; u_long addr; int cnt; - struct ps_strings arginfo, *ps_strings; - int mib[2]; - size_t len; - - ps_strings = NULL; - mib[0] = CTL_KERN; - mib[1] = KERN_PS_STRINGS; - len = sizeof(ps_strings); - if (sysctl(mib, 2, &ps_strings, &len, NULL, 0) < 0 || - ps_strings == NULL) - ps_strings = PS_STRINGS; + struct ps_strings arginfo; /* * Pointers are stored at the top of the user stack. */ if (p->p_stat == SZOMB || - kvm_uread(kd, p, ps_strings, (char *)&arginfo, + kvm_uread(kd, p, USRSTACK - sizeof(arginfo), (char *)&arginfo, sizeof(arginfo)) != sizeof(arginfo)) return (0); @@ -669,11 +659,6 @@ kvm_uread(kd, p, uva, buf, len) ssize_t amount; int fd; - if (!ISALIVE(kd)) { - _kvm_err(kd, kd->program, "cannot read user space from dead kernel"); - return(0); - } - cp = buf; sprintf(procfile, "/proc/%d/mem", p->p_pid); |
