aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/sysctl.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-04 22:43:30 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-04 22:43:30 +0100
commit559a9ec5800922288bac571d0beb9e4240fe7e1d (patch)
tree9fe8a2aab1bfc3dad9c1f3b4d1389ab48fc77572 /xen/common/sysctl.c
parent837a388c915f26280e404e12b4a940a912e8eca7 (diff)
downloadxen-559a9ec5800922288bac571d0beb9e4240fe7e1d.tar.gz
xen-559a9ec5800922288bac571d0beb9e4240fe7e1d.tar.bz2
xen-559a9ec5800922288bac571d0beb9e4240fe7e1d.zip
scheduler: Add a global parameter adjustment to the switchable scheduler interface
...along with a new sysctl to call it directly. This is in order to support DornerWorks' new ARINC653 scheduler. Based on code from Josh Holtrop and Kathy Hadley at DornerWorks, Ltd Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com> Signed-off-by: Keir Fraser <keir.fraser@eu.citrix.com>
Diffstat (limited to 'xen/common/sysctl.c')
-rw-r--r--xen/common/sysctl.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/xen/common/sysctl.c b/xen/common/sysctl.c
index 51b0a8e414..5365c20f29 100644
--- a/xen/common/sysctl.c
+++ b/xen/common/sysctl.c
@@ -326,6 +326,14 @@ long do_sysctl(XEN_GUEST_HANDLE(xen_sysctl_t) u_sysctl)
}
break;
+ case XEN_SYSCTL_scheduler_op:
+ {
+ ret = sched_adjust_global(&op->u.scheduler_op);
+ if ( (ret == 0) && copy_to_guest(u_sysctl, op, 1) )
+ ret = -EFAULT;
+ }
+ break;
+
default:
ret = arch_do_sysctl(op, u_sysctl);
break;