debuggers.hg

view xen/include/public/sched_ctl.h @ 4647:9c88ba91d330

bitkeeper revision 1.1346.1.1 (42670505dNhgnJm5dQD81pCalXMZgw)

manual merge
author iap10@freefall.cl.cam.ac.uk
date Thu Apr 21 01:42:29 2005 +0000 (2005-04-21)
parents 7fc6eac6da3a 3dc193a9786a
children 86285c9c18c1
line source
1 /******************************************************************************
2 * Generic scheduler control interface.
3 *
4 * Mark Williamson, (C) 2004 Intel Research Cambridge
5 */
7 #ifndef __XEN_PUBLIC_SCHED_CTL_H__
8 #define __XEN_PUBLIC_SCHED_CTL_H__
10 /* Scheduler types. */
11 #define SCHED_BVT 0
12 #define SCHED_SEDF 4
14 /* Set or get info? */
15 #define SCHED_INFO_PUT 0
16 #define SCHED_INFO_GET 1
18 /*
19 * Generic scheduler control command - used to adjust system-wide scheduler
20 * parameters
21 */
22 struct sched_ctl_cmd
23 {
24 u32 sched_id;
25 u32 direction;
26 union {
27 struct bvt_ctl {
28 u32 ctx_allow;
29 } bvt;
30 } u;
31 };
33 struct sched_adjdom_cmd
34 {
35 u32 sched_id; /* 0 */
36 u32 direction; /* 4 */
37 domid_t domain; /* 8 */
38 u16 __pad0;
39 u32 __pad1;
40 union { /* 16 */
41 struct bvt_adjdom
42 {
43 u32 mcu_adv; /* 16: mcu advance: inverse of weight */
44 u32 warpback; /* 20: warp? */
45 s32 warpvalue; /* 24: warp value */
46 long long warpl; /* 32: warp limit */
47 long long warpu; /* 40: unwarp time requirement */
48 } PACKED bvt;
50 struct sedf_adjdom
51 {
52 u64 period; /* 16 */
53 u64 slice; /* 24 */
54 u64 latency; /* 32 */
55 u16 extratime; /* 36 */
56 u16 weight; /* 38 */
57 } PACKED sedf;
59 } PACKED u;
60 } PACKED; /* 40 bytes */
62 #endif /* __XEN_PUBLIC_SCHED_CTL_H__ */