am 3a1bbee3: Add eventfd system call support

Merge commit '3a1bbee36b773862e88c6f1895b607c0cd81b499' into gingerbread-plus-aosp

* commit '3a1bbee36b773862e88c6f1895b607c0cd81b499':
  Add eventfd system call support
This commit is contained in:
Keith Deacon 2010-09-08 03:06:26 -07:00 committed by Android Git Automerger
commit d7b156d2a3
6 changed files with 40 additions and 0 deletions

View File

@ -260,3 +260,5 @@ int poll(struct pollfd *, unsigned int, long) 168
# ARM-specific ARM_NR_BASE == 0x0f0000 == 983040
int __set_tls:ARM_set_tls(void*) 983045,-1
int cacheflush:ARM_cacheflush(long start, long end, long flags) 983042,-1
int eventfd(int count, int flags) 351,323

View File

@ -172,3 +172,4 @@ syscall_src += arch-arm/syscalls/inotify_rm_watch.S
syscall_src += arch-arm/syscalls/poll.S
syscall_src += arch-arm/syscalls/__set_tls.S
syscall_src += arch-arm/syscalls/cacheflush.S
syscall_src += arch-arm/syscalls/eventfd.S

View File

@ -0,0 +1,19 @@
/* autogenerated by gensyscalls.py */
#include <sys/linux-syscalls.h>
.text
.type eventfd, #function
.globl eventfd
.align 4
.fnstart
eventfd:
.save {r4, r7}
stmfd sp!, {r4, r7}
ldr r7, =__NR_eventfd
swi #0
ldmfd sp!, {r4, r7}
movs r0, r0
bxpl lr
b __set_syscall_errno
.fnend

View File

@ -0,0 +1,14 @@
#ifndef _SYS_EVENTFD_H_
#define _SYS_EVENTFD_H_
#include <sys/cdefs.h>
#include <asm/unistd.h>
#include <asm/termbits.h>
__BEGIN_DECLS
extern int eventfd(int count, int flags);
__END_DECLS
#endif /* _SYS_EVENTFD_H_ */

View File

@ -182,6 +182,7 @@
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 318)
#define __NR_ARM_set_tls (__NR_SYSCALL_BASE + 983045)
#define __NR_ARM_cacheflush (__NR_SYSCALL_BASE + 983042)
#define __NR_eventfd (__NR_SYSCALL_BASE + 351)
#endif
#ifdef __i386__
@ -222,6 +223,7 @@
#define __NR_inotify_init (__NR_SYSCALL_BASE + 291)
#define __NR_inotify_add_watch (__NR_SYSCALL_BASE + 292)
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 293)
#define __NR_eventfd (__NR_SYSCALL_BASE + 323)
#endif
#if defined(__SH3__) || defined(__SH4__)
@ -278,6 +280,7 @@
#define __NR_inotify_init (__NR_SYSCALL_BASE + 290)
#define __NR_inotify_add_watch (__NR_SYSCALL_BASE + 291)
#define __NR_inotify_rm_watch (__NR_SYSCALL_BASE + 292)
#define __NR_eventfd (__NR_SYSCALL_BASE + 323)
#endif
#endif

View File

@ -202,6 +202,7 @@ int inotify_rm_watch (int, unsigned int);
int poll (struct pollfd *, unsigned int, long);
int __set_tls (void*);
int cacheflush (long start, long end, long flags);
int eventfd (int count, int flags);
#ifdef __cplusplus
}
#endif