Index: sys/compat/freebsd32/freebsd32_misc.c =================================================================== --- sys/compat/freebsd32/freebsd32_misc.c +++ sys/compat/freebsd32/freebsd32_misc.c @@ -1026,19 +1026,12 @@ case PT_SETDBREGS: error = copyin(uap->addr, &r.dbreg, sizeof(r.dbreg)); break; + case PT_GETREGSET: case PT_SETREGSET: error = copyin(uap->addr, &r32.vec, sizeof(r32.vec)); if (error != 0) break; - r.vec.iov_len = r32.vec.iov_len; - r.vec.iov_base = PTRIN(r32.vec.iov_base); - break; - case PT_GETREGSET: - error = copyin(uap->addr, &r32.vec, sizeof(r32.vec)); - if (error != 0) - break; - r.vec.iov_len = r32.vec.iov_len; r.vec.iov_base = PTRIN(r32.vec.iov_base); break; Index: sys/kern/sys_process.c =================================================================== --- sys/kern/sys_process.c +++ sys/kern/sys_process.c @@ -627,10 +627,8 @@ case PT_GETDBREGS: bzero(&r.dbreg, sizeof(r.dbreg)); break; - case PT_SETREGSET: - error = copyin(uap->addr, &r.vec, sizeof(r.vec)); - break; case PT_GETREGSET: + case PT_SETREGSET: error = copyin(uap->addr, &r.vec, sizeof(r.vec)); break; case PT_SETREGS: