aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/include/asm/unistd_32.h6
-rw-r--r--arch/x86/kernel/syscall_table_32.S14
-rw-r--r--include/litmus/unistd.h23
3 files changed, 42 insertions, 1 deletions
diff --git a/arch/x86/include/asm/unistd_32.h b/arch/x86/include/asm/unistd_32.h
index 6fb3c209a7e3..34bc4204d373 100644
--- a/arch/x86/include/asm/unistd_32.h
+++ b/arch/x86/include/asm/unistd_32.h
@@ -343,9 +343,13 @@
343#define __NR_rt_tgsigqueueinfo 335 343#define __NR_rt_tgsigqueueinfo 335
344#define __NR_perf_event_open 336 344#define __NR_perf_event_open 336
345 345
346#define __NR_LITMUS 337
347
348#include "litmus/unistd.h"
349
346#ifdef __KERNEL__ 350#ifdef __KERNEL__
347 351
348#define NR_syscalls 337 352#define NR_syscalls 336 + NR_litmus_syscalls
349 353
350#define __ARCH_WANT_IPC_PARSE_VERSION 354#define __ARCH_WANT_IPC_PARSE_VERSION
351#define __ARCH_WANT_OLD_READDIR 355#define __ARCH_WANT_OLD_READDIR
diff --git a/arch/x86/kernel/syscall_table_32.S b/arch/x86/kernel/syscall_table_32.S
index 0157cd26d7cc..17fcb3abe236 100644
--- a/arch/x86/kernel/syscall_table_32.S
+++ b/arch/x86/kernel/syscall_table_32.S
@@ -336,3 +336,17 @@ ENTRY(sys_call_table)
336 .long sys_pwritev 336 .long sys_pwritev
337 .long sys_rt_tgsigqueueinfo /* 335 */ 337 .long sys_rt_tgsigqueueinfo /* 335 */
338 .long sys_perf_event_open 338 .long sys_perf_event_open
339 .long sys_set_rt_task_param /* LITMUS^RT 337 */
340 .long sys_get_rt_task_param
341 .long sys_complete_job
342 .long sys_od_open
343 .long sys_od_close
344 .long sys_fmlp_down
345 .long sys_fmlp_up
346 .long sys_srp_down
347 .long sys_srp_up
348 .long sys_query_job_no
349 .long sys_wait_for_job_release
350 .long sys_wait_for_ts_release
351 .long sys_release_ts
352 .long sys_null_call
diff --git a/include/litmus/unistd.h b/include/litmus/unistd.h
new file mode 100644
index 000000000000..6fec5364adaf
--- /dev/null
+++ b/include/litmus/unistd.h
@@ -0,0 +1,23 @@
1/*
2 * included from arch/x86/include/asm/unistd_32.h
3 *
4 * LITMUS^RT syscalls with "relative" numbers
5 */
6#define __LSC(x) (__NR_LITMUS + x)
7
8#define __NR_set_rt_task_param __LSC(0)
9#define __NR_get_rt_task_param __LSC(1)
10#define __NR_sleep_next_period __LSC(2)
11#define __NR_od_open __LSC(3)
12#define __NR_od_close __LSC(4)
13#define __NR_fmlp_down __LSC(5)
14#define __NR_fmlp_up __LSC(6)
15#define __NR_srp_down __LSC(7)
16#define __NR_srp_up __LSC(8)
17#define __NR_query_job_no __LSC(9)
18#define __NR_wait_for_job_release __LSC(10)
19#define __NR_wait_for_ts_release __LSC(11)
20#define __NR_release_ts __LSC(12)
21#define __NR_null_call __LSC(13)
22
23#define NR_litmus_syscalls 14