1436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#ifndef __VKI_XEN_SYSCTL_H
2436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define __VKI_XEN_SYSCTL_H
3436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
4436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov/*
5436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * The sysctl interface is versioned via the interface_version
6436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * field. This structures in this header supports sysctl interfaces:
7436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov *
8436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * - 00000008: Xen 4.1
9436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * - 00000009: Xen 4.2
10436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * - 0000000a: Xen 4.3
11436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov *
12436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * When adding a new subop be sure to include the variants used by all
13436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * of the above, both here and in syswrap-xen.c
14436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov *
15436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * Structs which are identical in all supported versions have no
16436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * version suffix. Structs which do differ are defined multiple times
17436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * and use the suffix of the latest version to contain that particular
18436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov * variant.
19436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov */
20436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
21436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_readconsole                    1
22436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_tbuf_op                        2
23436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_physinfo                       3
24436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_sched_id                       4
25436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_perfc_op                       5
26436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_getdomaininfolist              6
27436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_debug_keys                     7
28436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_getcpuinfo                     8
29436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_availheap                      9
30436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_get_pmstat                    10
31436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_cpu_hotplug                   11
32436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_pm_op                         12
33436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_page_offline_op               14
34436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_lockprof_op                   15
35436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_topologyinfo                  16
36436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_numainfo                      17
37436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_cpupool_op                    18
38436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_scheduler_op                  19
39436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_coverage_op                   20
40436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
41436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_readconsole {
42436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* IN */
43436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint8_t clear;
44436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint8_t incremental;
45436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
46436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint8_t pad0, pad1;
47436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
48436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /*
49436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     * IN:  Start index for consumption if @incremental.
50436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     * OUT: End index after consuming from the console.
51436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     */
52436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t index;
53436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(char) buffer; /* IN */
54436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
55436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /*
56436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     * IN:  size of buffer.
57436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     * OUT: bytes written into buffer.
58436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov     */
59436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t count;
60436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
61436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
62436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_getdomaininfolist_00000008 {
63436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* IN variables. */
64436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_domid_t           first_domain;
65436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              max_domains;
66436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_xen_domctl_getdomaininfo_00000007_t) buffer;
67436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* OUT variables. */
68436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              num_domains;
69436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
70436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
71436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_getdomaininfolist_00000009 {
72436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* IN variables. */
73436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_domid_t           first_domain;
74436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              max_domains;
75436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_xen_domctl_getdomaininfo_00000008_t) buffer;
76436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* OUT variables. */
77436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              num_domains;
78436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
79436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
80436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_getdomaininfolist_0000000a {
81436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* IN variables. */
82436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_domid_t           first_domain;
83436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              max_domains;
84436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_xen_domctl_getdomaininfo_00000009_t) buffer;
85436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* OUT variables. */
86436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              num_domains;
87436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
88436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
89436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_CREATE                1  /* C */
90436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_DESTROY               2  /* D */
91436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_INFO                  3  /* I */
92436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_ADDCPU                4  /* A */
93436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_RMCPU                 5  /* R */
94436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_MOVEDOMAIN            6  /* M */
95436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_OP_FREEINFO              7  /* F */
96436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#define VKI_XEN_SYSCTL_CPUPOOL_PAR_ANY     0xFFFFFFFF
97436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_cpupool_op {
98436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t op;          /* IN */
99436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cpupool_id;  /* IN: CDIARM OUT: CI */
100436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t sched_id;    /* IN: C      OUT: I  */
101436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t domid;       /* IN: M              */
102436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cpu;         /* IN: AR             */
103436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t n_dom;       /*            OUT: I  */
104436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    struct vki_xenctl_bitmap cpumap; /*     OUT: IF */
105436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
106436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
107436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_debug_keys {
108436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* IN variables. */
109436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(char) keys;
110436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t nr_keys;
111436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
112436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
113436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_topologyinfo {
114436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_cpu_index;
115436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint32) cpu_to_core;
116436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint32) cpu_to_socket;
117436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint32) cpu_to_node;
118436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
119436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
120436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_numainfo {
121436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_node_index;
122436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint64) node_to_memsize;
123436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint64) node_to_memfree;
124436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    VKI_XEN_GUEST_HANDLE_64(vki_uint32) node_to_node_distance;
125436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
126436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_physinfo_00000008 {
127436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t threads_per_core;
128436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cores_per_socket;
129436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t nr_cpus;     /* # CPUs currently online */
130436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_cpu_id;  /* Largest possible CPU ID on this host */
131436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t nr_nodes;    /* # nodes currently online */
132436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_node_id; /* Largest possible node ID on this host */
133436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cpu_khz;
134436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t total_pages;
135436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t free_pages;
136436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t scrub_pages;
137436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t hw_cap[8];
138436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
139436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t capabilities;
140436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
141436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
142436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_physinfo_0000000a {
143436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t threads_per_core;
144436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cores_per_socket;
145436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t nr_cpus;     /* # CPUs currently online */
146436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_cpu_id;  /* Largest possible CPU ID on this host */
147436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t nr_nodes;    /* # nodes currently online */
148436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t max_node_id; /* Largest possible node ID on this host */
149436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cpu_khz;
150436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t total_pages;
151436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t free_pages;
152436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t scrub_pages;
153436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_xen_uint64_aligned_t outstanding_pages;
154436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t hw_cap[8];
155436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
156436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t capabilities;
157436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
158436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
159436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl_sched_id {
160436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    /* OUT variable. */
161436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t              sched_id;
162436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
163436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
164436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovstruct vki_xen_sysctl {
165436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t cmd;
166436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    vki_uint32_t interface_version; /* XEN_SYSCTL_INTERFACE_VERSION */
167436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    union {
168436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_readconsole       readconsole;
169436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_tbuf_op           tbuf_op;
170436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_physinfo_00000008 physinfo_00000008;
171436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_physinfo_0000000a physinfo_0000000a;
172436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_topologyinfo      topologyinfo;
173436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_numainfo          numainfo;
174436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_sched_id          sched_id;
175436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_perfc_op          perfc_op;
176436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_getdomaininfolist_00000008 getdomaininfolist_00000008;
177436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_getdomaininfolist_00000009 getdomaininfolist_00000009;
178436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_getdomaininfolist_0000000a getdomaininfolist_0000000a;
179436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_debug_keys        debug_keys;
180436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_getcpuinfo        getcpuinfo;
181436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_availheap         availheap;
182436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_get_pmstat        get_pmstat;
183436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_cpu_hotplug       cpu_hotplug;
184436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_pm_op             pm_op;
185436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_page_offline_op   page_offline;
186436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_lockprof_op       lockprof_op;
187436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        struct vki_xen_sysctl_cpupool_op        cpupool_op;
188436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_scheduler_op      scheduler_op;
189436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        //struct vki_xen_sysctl_coverage_op       coverage_op;
190436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
191436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov        vki_uint8_t                             pad[128];
192436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov    } u;
193436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov};
194436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
195436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#endif // __VKI_XEN_SYSCTL_H
196436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
197436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov/*--------------------------------------------------------------------*/
198436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov/*--- end                                                          ---*/
199436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov/*--------------------------------------------------------------------*/
200