[uClibc] Bug in arm syscall?

Dave Hylands dhylands at broadcom.com
Tue Feb 24 22:46:36 UTC 2004


Hi,

We've discovered what I believe to be a bug in the arm version of
syscall.c:

libc/sysdeps/linux/arm/syscall.c

    if(_r0 >=(unsigned long) -4095) {
    (*__errno_location())=(-_r0);
    _r0=(unsigned long) -1;
    }

If pthreads is enabled then __errno_location maps to a function call and
r0 winds up getting trashed with the address of errno.

--
Dave Hylands
Vancouver, BC, Canada
http://www.DaveHylands.com/




More information about the uClibc mailing list