diff options
Diffstat (limited to 'arch/ia64/kvm/vmm.c')
-rw-r--r-- | arch/ia64/kvm/vmm.c | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/arch/ia64/kvm/vmm.c b/arch/ia64/kvm/vmm.c deleted file mode 100644 index 176a12cd56de..000000000000 --- a/arch/ia64/kvm/vmm.c +++ /dev/null | |||
@@ -1,99 +0,0 @@ | |||
1 | /* | ||
2 | * vmm.c: vmm module interface with kvm module | ||
3 | * | ||
4 | * Copyright (c) 2007, Intel Corporation. | ||
5 | * | ||
6 | * Xiantao Zhang (xiantao.zhang@intel.com) | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify it | ||
9 | * under the terms and conditions of the GNU General Public License, | ||
10 | * version 2, as published by the Free Software Foundation. | ||
11 | * | ||
12 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
13 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
14 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
15 | * more details. | ||
16 | * | ||
17 | * You should have received a copy of the GNU General Public License along with | ||
18 | * this program; if not, write to the Free Software Foundation, Inc., 59 Temple | ||
19 | * Place - Suite 330, Boston, MA 02111-1307 USA. | ||
20 | */ | ||
21 | |||
22 | |||
23 | #include <linux/kernel.h> | ||
24 | #include <linux/module.h> | ||
25 | #include <asm/fpswa.h> | ||
26 | |||
27 | #include "vcpu.h" | ||
28 | |||
29 | MODULE_AUTHOR("Intel"); | ||
30 | MODULE_LICENSE("GPL"); | ||
31 | |||
32 | extern char kvm_ia64_ivt; | ||
33 | extern char kvm_asm_mov_from_ar; | ||
34 | extern char kvm_asm_mov_from_ar_sn2; | ||
35 | extern fpswa_interface_t *vmm_fpswa_interface; | ||
36 | |||
37 | long vmm_sanity = 1; | ||
38 | |||
39 | struct kvm_vmm_info vmm_info = { | ||
40 | .module = THIS_MODULE, | ||
41 | .vmm_entry = vmm_entry, | ||
42 | .tramp_entry = vmm_trampoline, | ||
43 | .vmm_ivt = (unsigned long)&kvm_ia64_ivt, | ||
44 | .patch_mov_ar = (unsigned long)&kvm_asm_mov_from_ar, | ||
45 | .patch_mov_ar_sn2 = (unsigned long)&kvm_asm_mov_from_ar_sn2, | ||
46 | }; | ||
47 | |||
48 | static int __init kvm_vmm_init(void) | ||
49 | { | ||
50 | |||
51 | vmm_fpswa_interface = fpswa_interface; | ||
52 | |||
53 | /*Register vmm data to kvm side*/ | ||
54 | return kvm_init(&vmm_info, 1024, 0, THIS_MODULE); | ||
55 | } | ||
56 | |||
57 | static void __exit kvm_vmm_exit(void) | ||
58 | { | ||
59 | kvm_exit(); | ||
60 | return ; | ||
61 | } | ||
62 | |||
63 | void vmm_spin_lock(vmm_spinlock_t *lock) | ||
64 | { | ||
65 | _vmm_raw_spin_lock(lock); | ||
66 | } | ||
67 | |||
68 | void vmm_spin_unlock(vmm_spinlock_t *lock) | ||
69 | { | ||
70 | _vmm_raw_spin_unlock(lock); | ||
71 | } | ||
72 | |||
73 | static void vcpu_debug_exit(struct kvm_vcpu *vcpu) | ||
74 | { | ||
75 | struct exit_ctl_data *p = &vcpu->arch.exit_data; | ||
76 | long psr; | ||
77 | |||
78 | local_irq_save(psr); | ||
79 | p->exit_reason = EXIT_REASON_DEBUG; | ||
80 | vmm_transition(vcpu); | ||
81 | local_irq_restore(psr); | ||
82 | } | ||
83 | |||
84 | asmlinkage int printk(const char *fmt, ...) | ||
85 | { | ||
86 | struct kvm_vcpu *vcpu = current_vcpu; | ||
87 | va_list args; | ||
88 | int r; | ||
89 | |||
90 | memset(vcpu->arch.log_buf, 0, VMM_LOG_LEN); | ||
91 | va_start(args, fmt); | ||
92 | r = vsnprintf(vcpu->arch.log_buf, VMM_LOG_LEN, fmt, args); | ||
93 | va_end(args); | ||
94 | vcpu_debug_exit(vcpu); | ||
95 | return r; | ||
96 | } | ||
97 | |||
98 | module_init(kvm_vmm_init) | ||
99 | module_exit(kvm_vmm_exit) | ||