aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm/kvm.h
diff options
context:
space:
mode:
authorIzik Eidus <izike@qumranet.com>2007-10-24 18:29:55 -0400
committerAvi Kivity <avi@qumranet.com>2008-01-30 10:52:56 -0500
commitcbc9402297b9a233981f74587786364cda21c771 (patch)
tree35ba97693ffc506bb08f6bafa9e61a260bc8189f /drivers/kvm/kvm.h
parente0d62c7f48605119a7f9fa632e77561c89928963 (diff)
KVM: Add ioctl to tss address from userspace,
Currently kvm has a wart in that it requires three extra pages for use as a tss when emulating real mode on Intel. This patch moves the allocation internally, only requiring userspace to tell us where in the physical address space we can place the tss. Signed-off-by: Izik Eidus <izike@qumranet.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/kvm.h')
-rw-r--r--drivers/kvm/kvm.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/kvm/kvm.h b/drivers/kvm/kvm.h
index 82c3b13e5d0a..3d07d9b1b815 100644
--- a/drivers/kvm/kvm.h
+++ b/drivers/kvm/kvm.h
@@ -382,6 +382,7 @@ struct kvm {
382 struct kvm_pic *vpic; 382 struct kvm_pic *vpic;
383 struct kvm_ioapic *vioapic; 383 struct kvm_ioapic *vioapic;
384 int round_robin_prev_vcpu; 384 int round_robin_prev_vcpu;
385 unsigned int tss_addr;
385}; 386};
386 387
387static inline struct kvm_pic *pic_irqchip(struct kvm *kvm) 388static inline struct kvm_pic *pic_irqchip(struct kvm *kvm)
@@ -467,6 +468,8 @@ struct kvm_x86_ops {
467 void (*inject_pending_irq)(struct kvm_vcpu *vcpu); 468 void (*inject_pending_irq)(struct kvm_vcpu *vcpu);
468 void (*inject_pending_vectors)(struct kvm_vcpu *vcpu, 469 void (*inject_pending_vectors)(struct kvm_vcpu *vcpu,
469 struct kvm_run *run); 470 struct kvm_run *run);
471
472 int (*set_tss_addr)(struct kvm *kvm, unsigned int addr);
470}; 473};
471 474
472extern struct kvm_x86_ops *kvm_x86_ops; 475extern struct kvm_x86_ops *kvm_x86_ops;