Index: sys/kern/kern_exec.c =================================================================== --- sys/kern/kern_exec.c +++ sys/kern/kern_exec.c @@ -174,6 +174,7 @@ static int sysctl_kern_usrstack(SYSCTL_HANDLER_ARGS) { + vm_offset_t stackaddr; struct proc *p; int error; @@ -181,12 +182,15 @@ #ifdef SCTL_MASK32 if (req->flags & SCTL_MASK32) { unsigned int val; - val = (unsigned int)p->p_sysent->sv_usrstack; + val = (unsigned int)p->p_sysent->sv_usrstack + - p->p_vmspace->vm_stkgap; error = SYSCTL_OUT(req, &val, sizeof(val)); } else #endif - error = SYSCTL_OUT(req, &p->p_sysent->sv_usrstack, - sizeof(p->p_sysent->sv_usrstack)); + { + stackaddr = p->p_sysent->sv_usrstack - p->p_vmspace->vm_stkgap; + error = SYSCTL_OUT(req, &stackaddr, sizeof(stackaddr)); + } return error; }