[PATCH-0.9.33] common/pread_write.c: unbreak on archs without __NR_pread64
Peter Korsgaard
peter at korsgaard.com
Fri Oct 4 21:45:20 UTC 2013
>>>>> "Peter" == Peter Korsgaard <peter at korsgaard.com> writes:
Hi,
Peter> Some archs (avr32 in particular) still doesn't define __NR_pread64, so
Peter> we should fall back to __NR_pread if it isn't available.
Peter> The code nicely checks for it, but then ends up hard coding the syscall
Peter> to use __NR_pread64 afterwards, rendering the check useless. Fix it by
Peter> using the result of the test instead.
I noticed another critical issue on ARM EABI. The use of
__LONG_LONG_PAIR for the offset doesn't take alignment requirement of
64bit parameters on EABI into consideration, so the offset is off by one
register :/
https://lkml.org/lkml/2006/1/12/175
How should that be handled?
--
Bye, Peter Korsgaard
More information about the uClibc
mailing list