summaryrefslogtreecommitdiff
path: root/kvm.c
diff options
context:
space:
mode:
authorRobert Mustacchi <rm@joyent.com>2011-06-06 16:50:42 -0700
committerRobert Mustacchi <rm@joyent.com>2011-06-06 16:51:29 -0700
commit9ce61fba3deff284d10cb6e4cab9f47869d3d2f8 (patch)
treedd40888930adcc3463d57e4aaec48265de84970f /kvm.c
parent8fd82e2f770502da502987b7529d137dc2962db4 (diff)
downloadillumos-kvm-9ce61fba3deff284d10cb6e4cab9f47869d3d2f8.tar.gz
HVM-311 Cleanup externs and includes in kvm_x86.c
Diffstat (limited to 'kvm.c')
-rw-r--r--kvm.c57
1 files changed, 14 insertions, 43 deletions
diff --git a/kvm.c b/kvm.c
index e03c3b0..a6bd782 100644
--- a/kvm.c
+++ b/kvm.c
@@ -719,9 +719,7 @@ out_fail:
return (r);
}
-
-
-static struct kvm_shared_msrs_global shared_msrs_global;
+struct kvm_shared_msrs_global shared_msrs_global;
void
kvm_define_shared_msr(unsigned slot, uint32_t msr)
@@ -1496,6 +1494,18 @@ kvm_free_physmem_slot(struct kvm_memory_slot *free,
#endif
}
+void
+kvm_free_physmem(struct kvm *kvm)
+{
+ int ii;
+ struct kvm_memslots *slots = kvm->memslots;
+
+ for (ii = 0; ii < slots->nmemslots; ii++)
+ kvm_free_physmem_slot(&slots->memslots[ii], NULL);
+
+ kmem_free(kvm->memslots, sizeof (struct kvm_memslots));
+}
+
extern int
kvm_arch_prepare_memory_region(struct kvm *kvm,
struct kvm_memory_slot *memslot, struct kvm_memory_slot old,
@@ -3183,18 +3193,6 @@ kvm_hv_msr_partition_wide(uint32_t msr)
return (r);
}
-inline page_t *
-compound_head(page_t *page)
-{
- /* XXX - linux links page_t together. */
- return (page);
-}
-
-inline void
-get_page(page_t *page)
-{
- page = compound_head(page);
-}
extern pfn_t physmax;
@@ -3770,7 +3768,7 @@ kvm_clear_interrupt_queue(struct kvm_vcpu *vcpu)
static void kvm_on_user_return(struct kvm_vcpu *,
struct kvm_user_return_notifier *);
-static void
+void
shared_msr_update(unsigned slot, uint32_t msr)
{
struct kvm_shared_msrs *smsr;
@@ -3792,15 +3790,6 @@ shared_msr_update(unsigned slot, uint32_t msr)
}
void
-kvm_shared_msr_cpu_online(void)
-{
- unsigned i;
-
- for (i = 0; i < shared_msrs_global.nr; i++)
- shared_msr_update(i, shared_msrs_global.msrs[i]);
-}
-
-void
kvm_set_shared_msr(struct kvm_vcpu *vcpu, unsigned slot, uint64_t value,
uint64_t mask)
{
@@ -4872,10 +4861,6 @@ out:
return (r);
}
-
-
-
-
static int
is_vm86_segment(struct kvm_vcpu *vcpu, int seg)
{
@@ -4883,20 +4868,6 @@ is_vm86_segment(struct kvm_vcpu *vcpu, int seg)
(kvm_get_rflags(vcpu) & X86_EFLAGS_VM);
}
-static inline unsigned long
-get_desc_limit(const struct desc_struct *desc)
-{
- return (desc->c.b.limit0 | (desc->c.b.limit << 16));
-}
-
-unsigned long
-get_desc_base(const struct desc_struct *desc)
-{
- return (unsigned)(desc->c.b.base0 | ((desc->c.b.base1) << 16) |
- ((desc->c.b.base2) << 24));
-}
-
-
static void
seg_desct_to_kvm_desct(struct desc_struct *seg_desc, uint16_t selector,
struct kvm_segment *kvm_desct)