[PATCH] powerpc: Call direct system calls for socket operations

Rajalakshmi Srinivasaraghavan raji@linux.vnet.ibm.com
Wed Jul 1 08:03:00 GMT 2015



On 07/01/2015 12:32 PM, Andreas Schwab wrote:
> Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com> writes:
>
>> Explicit system calls for the socket operations were added in Linux kernel
>> in commit 86250b9d12ca for powerpc. This patch make use of those instead of
>> calling socketcall to save number of cycles on networking syscalls.
>>
>> 2015-07-01  Rajalakshmi Srinivasaraghavan  <raji@linux.vnet.ibm.com>
>>
>> 	* sysdeps/unix/sysv/linux/powerpc/kernel-features.h: Define new macros.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/accept.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/bind.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/connect.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/getpeername.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/getsockname.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/getsockopt.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/listen.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/recv.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/recvfrom.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/recvmsg.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/send.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sendmsg.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/sendto.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/setsockopt.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/shutdown.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.c: New file.
>> 	* sysdeps/unix/sysv/linux/powerpc/powerpc64/socketpair.c: New file.
>
> IMHO it would make sense to put these checks directly in
> sysdeps/unix/sysv/linux/accept.c etc, since other architectures are
> expected to follow.
>
> Andreas.
>
If I move this new code to sysdeps/unix/sysv/linux/*.c , do you mean 
macro __ASSUME_*_SYSCALL will be defined in
future in sysdeps/unix/sysv/linux/*/kernel-features.h by respective arch 
developers based on the kernel version added?

-- 
Thanks
Rajalakshmi S



More information about the Libc-alpha mailing list