diff options
author | Carsten Otte <cotte@de.ibm.com> | 2007-10-29 11:09:10 -0400 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-01-30 10:52:58 -0500 |
commit | 6866b83ed7240bf4a7c50836ee10f61c8534503f (patch) | |
tree | ca4ca86b554537998ff0ee7c78d00ea723c3f537 /drivers/kvm/x86.c | |
parent | 5fb76f9be1a050a25e21a44ab2003c9d36a72a77 (diff) |
KVM: Portability: move get/set_apic_base to x86.c
This patch moves the implementation of get_apic_base and set_apic_base
from kvm_main.c to x86.c
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Hollis Blanchard <hollisb@us.ibm.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/x86.c')
-rw-r--r-- | drivers/kvm/x86.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/kvm/x86.c b/drivers/kvm/x86.c index 5a959220410a..c26e3715bee8 100644 --- a/drivers/kvm/x86.c +++ b/drivers/kvm/x86.c | |||
@@ -59,6 +59,25 @@ unsigned long segment_base(u16 selector) | |||
59 | } | 59 | } |
60 | EXPORT_SYMBOL_GPL(segment_base); | 60 | EXPORT_SYMBOL_GPL(segment_base); |
61 | 61 | ||
62 | u64 kvm_get_apic_base(struct kvm_vcpu *vcpu) | ||
63 | { | ||
64 | if (irqchip_in_kernel(vcpu->kvm)) | ||
65 | return vcpu->apic_base; | ||
66 | else | ||
67 | return vcpu->apic_base; | ||
68 | } | ||
69 | EXPORT_SYMBOL_GPL(kvm_get_apic_base); | ||
70 | |||
71 | void kvm_set_apic_base(struct kvm_vcpu *vcpu, u64 data) | ||
72 | { | ||
73 | /* TODO: reserve bits check */ | ||
74 | if (irqchip_in_kernel(vcpu->kvm)) | ||
75 | kvm_lapic_set_base(vcpu, data); | ||
76 | else | ||
77 | vcpu->apic_base = data; | ||
78 | } | ||
79 | EXPORT_SYMBOL_GPL(kvm_set_apic_base); | ||
80 | |||
62 | /* | 81 | /* |
63 | * List of msr numbers which we expose to userspace through KVM_GET_MSRS | 82 | * List of msr numbers which we expose to userspace through KVM_GET_MSRS |
64 | * and KVM_SET_MSRS, and KVM_GET_MSR_INDEX_LIST. | 83 | * and KVM_SET_MSRS, and KVM_GET_MSR_INDEX_LIST. |