Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm/arm/vm_machdep.c
Show First 20 Lines • Show All 185 Lines • ▼ Show 20 Lines | #ifdef __ARMEB__ | ||||
* syscalls also return an off_t they do not need this fixup. | * syscalls also return an off_t they do not need this fixup. | ||||
*/ | */ | ||||
call = frame->tf_r7; | call = frame->tf_r7; | ||||
if (call == SYS___syscall) { | if (call == SYS___syscall) { | ||||
register_t *ap = &frame->tf_r0; | register_t *ap = &frame->tf_r0; | ||||
register_t code = ap[_QUAD_LOWWORD]; | register_t code = ap[_QUAD_LOWWORD]; | ||||
if (td->td_proc->p_sysent->sv_mask) | if (td->td_proc->p_sysent->sv_mask) | ||||
code &= td->td_proc->p_sysent->sv_mask; | code &= td->td_proc->p_sysent->sv_mask; | ||||
fixup = ( | fixup = (code != SYS_lseek); | ||||
#if defined(COMPAT_FREEBSD6) && defined(SYS_freebsd6_lseek) | |||||
code != SYS_freebsd6_lseek && | |||||
#endif | |||||
code != SYS_lseek) ? 1 : 0; | |||||
} | } | ||||
#endif | #endif | ||||
switch (error) { | switch (error) { | ||||
case 0: | case 0: | ||||
if (fixup) { | if (fixup) { | ||||
frame->tf_r0 = 0; | frame->tf_r0 = 0; | ||||
frame->tf_r1 = td->td_retval[0]; | frame->tf_r1 = td->td_retval[0]; | ||||
▲ Show 20 Lines • Show All 151 Lines • Show Last 20 Lines |