Index: vm_machdep.c =================================================================== --- vm_machdep.c (revision 206103) +++ vm_machdep.c (working copy) @@ -302,9 +286,13 @@ * return value is really just 32 * bits. */ - locr0->v0 = td->td_retval[0]; - if (_QUAD_LOWWORD) + if (_QUAD_LOWWORD) { + locr0->v0 = 0; locr0->v1 = td->td_retval[0]; + } else { + locr0->v0 = td->td_retval[0]; + locr0->v1 = 0; + } locr0->a3 = 0; } else { locr0->v0 = td->td_retval[0]; @@ -321,15 +309,8 @@ break; /* nothing to do */ default: - if (quad_syscall && code != SYS_lseek) { - locr0->v0 = error; - if (_QUAD_LOWWORD) - locr0->v1 = error; - locr0->a3 = 1; - } else { - locr0->v0 = error; - locr0->a3 = 1; - } + locr0->v0 = error; + locr0->a3 = 1; } }