aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelipe Cerqueira <felipec@mpi-sws.org>2013-02-12 12:57:35 -0500
committerBjoern Brandenburg <bbb@mpi-sws.org>2013-08-07 03:46:50 -0400
commit230fc318e4781015cba769b9c4b2f5f7934e387b (patch)
treefdca3d46c5e5a257a85fa46bd6dc18856ca6c389
parent543810eb67bea9c3046ecb58388493bca39fe796 (diff)
Add LITMUS^RT syscalls for ARM
-rw-r--r--arch/arm/include/asm/unistd.h3
-rw-r--r--arch/arm/include/uapi/asm/unistd.h3
-rw-r--r--arch/arm/kernel/calls.S13
3 files changed, 18 insertions, 1 deletions
diff --git a/arch/arm/include/asm/unistd.h b/arch/arm/include/asm/unistd.h
index 141baa3f9a72..8b26b328d3f7 100644
--- a/arch/arm/include/asm/unistd.h
+++ b/arch/arm/include/asm/unistd.h
@@ -15,7 +15,8 @@
15 15
16#include <uapi/asm/unistd.h> 16#include <uapi/asm/unistd.h>
17 17
18#define __NR_syscalls (380) 18#define __NR_syscalls (380 + NR_litmus_syscalls)
19
19#define __ARM_NR_cmpxchg (__ARM_NR_BASE+0x00fff0) 20#define __ARM_NR_cmpxchg (__ARM_NR_BASE+0x00fff0)
20 21
21#define __ARCH_WANT_STAT64 22#define __ARCH_WANT_STAT64
diff --git a/arch/arm/include/uapi/asm/unistd.h b/arch/arm/include/uapi/asm/unistd.h
index af33b44990ed..1a767bf5148e 100644
--- a/arch/arm/include/uapi/asm/unistd.h
+++ b/arch/arm/include/uapi/asm/unistd.h
@@ -407,6 +407,9 @@
407#define __NR_kcmp (__NR_SYSCALL_BASE+378) 407#define __NR_kcmp (__NR_SYSCALL_BASE+378)
408#define __NR_finit_module (__NR_SYSCALL_BASE+379) 408#define __NR_finit_module (__NR_SYSCALL_BASE+379)
409 409
410#define __NR_LITMUS (__NR_SYSCALL_BASE+380)
411#include <litmus/unistd_32.h>
412
410/* 413/*
411 * This may need to be greater than __NR_last_syscall+1 in order to 414 * This may need to be greater than __NR_last_syscall+1 in order to
412 * account for the padding in the syscall table 415 * account for the padding in the syscall table
diff --git a/arch/arm/kernel/calls.S b/arch/arm/kernel/calls.S
index c6ca7e376773..2da776a2e8c4 100644
--- a/arch/arm/kernel/calls.S
+++ b/arch/arm/kernel/calls.S
@@ -389,6 +389,19 @@
389 CALL(sys_process_vm_writev) 389 CALL(sys_process_vm_writev)
390 CALL(sys_kcmp) 390 CALL(sys_kcmp)
391 CALL(sys_finit_module) 391 CALL(sys_finit_module)
392/* 380 */ CALL(sys_set_rt_task_param)
393 CALL(sys_get_rt_task_param)
394 CALL(sys_complete_job)
395 CALL(sys_od_open)
396 CALL(sys_od_close)
397/* 385 */ CALL(sys_litmus_lock)
398 CALL(sys_litmus_unlock)
399 CALL(sys_query_job_no)
400 CALL(sys_wait_for_job_release)
401 CALL(sys_wait_for_ts_release)
402/* 390 */ CALL(sys_release_ts)
403 CALL(sys_null_call)
404
392#ifndef syscalls_counted 405#ifndef syscalls_counted
393.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls 406.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
394#define syscalls_counted 407#define syscalls_counted