This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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

On 07/01/2015 12:32 PM, Andreas Schwab wrote:
Rajalakshmi Srinivasaraghavan <> 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  <>

	* 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.


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?

Rajalakshmi S

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]