]> code.ossystems Code Review - meta-freescale.git/blob
7182e80704d1e32de14feb51adaf2df8930c489d
[meta-freescale.git] /
1 From 1415ec63689ef39bcb24b5095941ec4cc884035c Mon Sep 17 00:00:00 2001
2 From: Mikael Pettersson <mikpe@it.uu.se>
3 Date: Sun, 15 Aug 2010 10:47:23 +0100
4 Subject: [PATCH 1/2] ARM: 6329/1: wire up sys_accept4() on ARM
5
6 sys_accept4() was added in kernel 2.6.28, but ARM was not updated
7 to include it.  The number and types of parameters is such that
8 no ARM-specific processing is needed, so wiring up sys_accept4()
9 just requires defining __NR_accept4 and adding a direct call in
10 the syscall entry table.
11
12 Tested with an EABI 2.6.35 kernel and Ulrich Drepper's original
13 accept4() test program, modified to define __NR_accept4 for ARM.
14
15 Using the updated unistd.h also eliminates a warning then building
16 glibc (2.10.2 and newer) about accept4() being unimplemented.
17
18 Upstream-Status: Backport [2.6.36]
19
20 Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
21 Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
22 ---
23  arch/arm/include/asm/unistd.h |    1 +
24  arch/arm/kernel/calls.S       |    1 +
25  2 files changed, 2 insertions(+), 0 deletions(-)
26
27 diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
28 index dd2bf53..d02cfb6 100644
29 --- a/arch/arm/include/asm/unistd.h
30 +++ b/arch/arm/include/asm/unistd.h
31 @@ -392,6 +392,7 @@
32  #define __NR_rt_tgsigqueueinfo         (__NR_SYSCALL_BASE+363)
33  #define __NR_perf_event_open           (__NR_SYSCALL_BASE+364)
34  #define __NR_recvmmsg                  (__NR_SYSCALL_BASE+365)
35 +#define __NR_accept4                   (__NR_SYSCALL_BASE+366)
36  
37  /*
38   * The following SWIs are ARM private.
39 diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
40 index 37ae301..afeb71f 100644
41 --- a/arch/arm/kernel/calls.S
42 +++ b/arch/arm/kernel/calls.S
43 @@ -375,6 +375,7 @@
44                 CALL(sys_rt_tgsigqueueinfo)
45                 CALL(sys_perf_event_open)
46  /* 365 */      CALL(sys_recvmmsg)
47 +               CALL(sys_accept4)
48  #ifndef syscalls_counted
49  .equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
50  #define syscalls_counted
51 -- 
52 1.6.6.1
53