[PATCH 3/6] Avoid reading errno in syscall implementations

H.J. Lu hjl.tools@gmail.com
Tue Oct 13 19:04:00 GMT 2015


On Mon, Oct 12, 2015 at 4:19 PM, H.J. Lu <hongjiu.lu@intel.com> wrote:
> Reading errno is expensive for x86 PIC.  With INTERNAL_SYSCALL,
> INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO and
> INLINE_SYSCALL_ERROR_RETURN, we can avoid reading errno.
>
>         * sysdeps/unix/sysv/linux/eventfd.c (eventfd): Use
>         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P and
>         INTERNAL_SYSCALL_ERRNO to avoid reading errno.
>         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Likewise.
>         * sysdeps/unix/sysv/linux/getrlimit64.c (__getrlimit64):
>         Likewise.
>         * sysdeps/unix/sysv/linux/setrlimit64.c (setrlimit64):
>         Likewise.
>         * sysdeps/unix/sysv/linux/signalfd.c (signalfd): Likewise.
>         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Likewise.

First 2 patches have been checked into master.  Here is the updated
patch.  There is no code change in libc.so on x86-64.  OK for master?

Thanks.

-- 
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Avoid-reading-errno-in-syscall-implementations.patch
Type: text/x-patch
Size: 7015 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20151013/81daa56d/attachment.bin>


More information about the Libc-alpha mailing list