aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@xensource.com>2007-07-17 21:37:07 -0400
committerJeremy Fitzhardinge <jeremy@goop.org>2007-07-18 11:47:45 -0400
commit60223a326fc8fa6e90e2c3fd28ae6de4a311d731 (patch)
treecf4e667a56402b846488373bfaf5bf840395e219 /include
parent3e2b8fbeec8f005672f2a2e862fb9c26a0bafedc (diff)
xen: Place vcpu_info structure into per-cpu memory
An experimental patch for Xen allows guests to place their vcpu_info structs anywhere. We try to use this to place the vcpu_info into the PDA, which allows direct access. If this works, then switch to using direct access operations for irq_enable, disable, save_fl and restore_fl. Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com> Cc: Chris Wright <chrisw@sous-sol.org> Cc: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'include')
-rw-r--r--include/xen/interface/vcpu.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/xen/interface/vcpu.h b/include/xen/interface/vcpu.h
index c6218f1ad3ca..ff61ea365997 100644
--- a/include/xen/interface/vcpu.h
+++ b/include/xen/interface/vcpu.h
@@ -151,4 +151,17 @@ struct vcpu_set_singleshot_timer {
151#define _VCPU_SSHOTTMR_future (0) 151#define _VCPU_SSHOTTMR_future (0)
152#define VCPU_SSHOTTMR_future (1U << _VCPU_SSHOTTMR_future) 152#define VCPU_SSHOTTMR_future (1U << _VCPU_SSHOTTMR_future)
153 153
154/*
155 * Register a memory location in the guest address space for the
156 * vcpu_info structure. This allows the guest to place the vcpu_info
157 * structure in a convenient place, such as in a per-cpu data area.
158 * The pointer need not be page aligned, but the structure must not
159 * cross a page boundary.
160 */
161#define VCPUOP_register_vcpu_info 10 /* arg == struct vcpu_info */
162struct vcpu_register_vcpu_info {
163 uint32_t mfn; /* mfn of page to place vcpu_info */
164 uint32_t offset; /* offset within page */
165};
166
154#endif /* __XEN_PUBLIC_VCPU_H__ */ 167#endif /* __XEN_PUBLIC_VCPU_H__ */