Date: Sat, 21 Oct 2006 00:46:56 +0000 (UTC) From: Olivier Houchard <cognet@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/arm/arm trap.c Message-ID: <200610210046.k9L0kvWY095756@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
cognet 2006-10-21 00:46:56 UTC FreeBSD src repository Modified files: sys/arm/arm trap.c Log: Ok I am an idiot. On 32 bits big-endian systems, it is needed to handle the syscalls using __syscall but only actually returning 32bits, such as mmap(), specially : they set the return value in td->td_retval[0], but the userland functions will expect this in r1, and not in r0 as it is normally done, as it is the LSB. So add a special case for all these syscalls (all except lseek, which truly returns 64bits). Many thanks to Peter Grehan for his patience while explaining me the issue. Revision Changes Path 1.30 +17 -2 src/sys/arm/arm/trap.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200610210046.k9L0kvWY095756>