aboutsummaryrefslogtreecommitdiffstats
path: root/litmus
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2015-12-18 04:20:16 -0500
committerBjoern Brandenburg <bbb@mpi-sws.org>2016-03-20 14:30:33 -0400
commit8c9a8402595eb86d039da74d8bb884cb77368049 (patch)
treee63a326a9018713763e930bb5ed972f380d127f0 /litmus
parentc1e58e8d55c4162a6b603c52eaa46783e6f6d9da (diff)
LITMUS^RT syscall: expose sys_reservation_create() via ioctl()
Diffstat (limited to 'litmus')
-rw-r--r--litmus/ctrldev.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/litmus/ctrldev.c b/litmus/ctrldev.c
index 3c8bbdb7c782..716215874803 100644
--- a/litmus/ctrldev.c
+++ b/litmus/ctrldev.c
@@ -122,6 +122,7 @@ static int litmus_ctrl_mmap(struct file* filp, struct vm_area_struct* vma)
122 122
123asmlinkage long sys_set_rt_task_param(pid_t pid, struct rt_task __user * param); 123asmlinkage long sys_set_rt_task_param(pid_t pid, struct rt_task __user * param);
124asmlinkage long sys_get_rt_task_param(pid_t pid, struct rt_task __user * param); 124asmlinkage long sys_get_rt_task_param(pid_t pid, struct rt_task __user * param);
125asmlinkage long sys_reservation_create(int type, void __user *config);
125asmlinkage long sys_get_current_budget(lt_t __user * _expended, lt_t __user *_remaining); 126asmlinkage long sys_get_current_budget(lt_t __user * _expended, lt_t __user *_remaining);
126asmlinkage long sys_null_call(cycles_t __user *ts); 127asmlinkage long sys_null_call(cycles_t __user *ts);
127asmlinkage long sys_od_open(int fd, int type, int obj_id, void* __user config); 128asmlinkage long sys_od_open(int fd, int type, int obj_id, void* __user config);
@@ -150,6 +151,7 @@ static long litmus_ctrl_ioctl(struct file *filp,
150 switch (cmd) { 151 switch (cmd) {
151 case LRT_set_rt_task_param: 152 case LRT_set_rt_task_param:
152 case LRT_get_rt_task_param: 153 case LRT_get_rt_task_param:
154 case LRT_reservation_create:
153 case LRT_get_current_budget: 155 case LRT_get_current_budget:
154 case LRT_od_open: 156 case LRT_od_open:
155 /* multiple arguments => need to get args via pointer */ 157 /* multiple arguments => need to get args via pointer */
@@ -168,6 +170,10 @@ static long litmus_ctrl_ioctl(struct file *filp,
168 return sys_get_rt_task_param( 170 return sys_get_rt_task_param(
169 syscall_args.get_set_task_param.pid, 171 syscall_args.get_set_task_param.pid,
170 syscall_args.get_set_task_param.param); 172 syscall_args.get_set_task_param.param);
173 case LRT_reservation_create:
174 return sys_reservation_create(
175 syscall_args.reservation_create.type,
176 syscall_args.reservation_create.config);
171 case LRT_get_current_budget: 177 case LRT_get_current_budget:
172 return sys_get_current_budget( 178 return sys_get_current_budget(
173 syscall_args.get_current_budget.expended, 179 syscall_args.get_current_budget.expended,