Statistics
| Branch: | Revision:

root / kvm-stub.c @ 63729c36

History | View | Annotate | Download (2.1 kB)

1 98c8573e Paolo Bonzini
/*
2 98c8573e Paolo Bonzini
 * QEMU KVM stub
3 98c8573e Paolo Bonzini
 *
4 98c8573e Paolo Bonzini
 * Copyright Red Hat, Inc. 2010
5 98c8573e Paolo Bonzini
 *
6 98c8573e Paolo Bonzini
 * Author: Paolo Bonzini     <pbonzini@redhat.com>
7 98c8573e Paolo Bonzini
 *
8 98c8573e Paolo Bonzini
 * This work is licensed under the terms of the GNU GPL, version 2 or later.
9 98c8573e Paolo Bonzini
 * See the COPYING file in the top-level directory.
10 98c8573e Paolo Bonzini
 *
11 98c8573e Paolo Bonzini
 */
12 98c8573e Paolo Bonzini
13 98c8573e Paolo Bonzini
#include "qemu-common.h"
14 98c8573e Paolo Bonzini
#include "sysemu.h"
15 98c8573e Paolo Bonzini
#include "hw/hw.h"
16 98c8573e Paolo Bonzini
#include "gdbstub.h"
17 98c8573e Paolo Bonzini
#include "kvm.h"
18 98c8573e Paolo Bonzini
19 98c8573e Paolo Bonzini
int kvm_irqchip_in_kernel(void)
20 98c8573e Paolo Bonzini
{
21 98c8573e Paolo Bonzini
    return 0;
22 98c8573e Paolo Bonzini
}
23 98c8573e Paolo Bonzini
24 98c8573e Paolo Bonzini
int kvm_pit_in_kernel(void)
25 98c8573e Paolo Bonzini
{
26 98c8573e Paolo Bonzini
    return 0;
27 98c8573e Paolo Bonzini
}
28 98c8573e Paolo Bonzini
29 98c8573e Paolo Bonzini
30 98c8573e Paolo Bonzini
int kvm_init_vcpu(CPUState *env)
31 98c8573e Paolo Bonzini
{
32 98c8573e Paolo Bonzini
    return -ENOSYS;
33 98c8573e Paolo Bonzini
}
34 98c8573e Paolo Bonzini
35 98c8573e Paolo Bonzini
int kvm_log_start(target_phys_addr_t phys_addr, ram_addr_t size)
36 98c8573e Paolo Bonzini
{
37 98c8573e Paolo Bonzini
    return -ENOSYS;
38 98c8573e Paolo Bonzini
}
39 98c8573e Paolo Bonzini
40 98c8573e Paolo Bonzini
int kvm_log_stop(target_phys_addr_t phys_addr, ram_addr_t size)
41 98c8573e Paolo Bonzini
{
42 98c8573e Paolo Bonzini
    return -ENOSYS;
43 98c8573e Paolo Bonzini
}
44 98c8573e Paolo Bonzini
45 98c8573e Paolo Bonzini
int kvm_coalesce_mmio_region(target_phys_addr_t start, ram_addr_t size)
46 98c8573e Paolo Bonzini
{
47 98c8573e Paolo Bonzini
    return -ENOSYS;
48 98c8573e Paolo Bonzini
}
49 98c8573e Paolo Bonzini
50 98c8573e Paolo Bonzini
int kvm_uncoalesce_mmio_region(target_phys_addr_t start, ram_addr_t size)
51 98c8573e Paolo Bonzini
{
52 98c8573e Paolo Bonzini
    return -ENOSYS;
53 98c8573e Paolo Bonzini
}
54 98c8573e Paolo Bonzini
55 98c8573e Paolo Bonzini
int kvm_check_extension(KVMState *s, unsigned int extension)
56 98c8573e Paolo Bonzini
{
57 98c8573e Paolo Bonzini
    return 0;
58 98c8573e Paolo Bonzini
}
59 98c8573e Paolo Bonzini
60 98c8573e Paolo Bonzini
int kvm_init(int smp_cpus)
61 98c8573e Paolo Bonzini
{
62 98c8573e Paolo Bonzini
    return -ENOSYS;
63 98c8573e Paolo Bonzini
}
64 98c8573e Paolo Bonzini
65 98c8573e Paolo Bonzini
void kvm_flush_coalesced_mmio_buffer(void)
66 98c8573e Paolo Bonzini
{
67 98c8573e Paolo Bonzini
}
68 98c8573e Paolo Bonzini
69 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_state(CPUState *env)
70 98c8573e Paolo Bonzini
{
71 98c8573e Paolo Bonzini
}
72 98c8573e Paolo Bonzini
73 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_post_reset(CPUState *env)
74 98c8573e Paolo Bonzini
{
75 98c8573e Paolo Bonzini
}
76 98c8573e Paolo Bonzini
77 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_post_init(CPUState *env)
78 98c8573e Paolo Bonzini
{
79 98c8573e Paolo Bonzini
}
80 98c8573e Paolo Bonzini
81 98c8573e Paolo Bonzini
int kvm_cpu_exec(CPUState *env)
82 98c8573e Paolo Bonzini
{
83 98c8573e Paolo Bonzini
    abort ();
84 98c8573e Paolo Bonzini
}
85 98c8573e Paolo Bonzini
86 98c8573e Paolo Bonzini
int kvm_has_sync_mmu(void)
87 98c8573e Paolo Bonzini
{
88 98c8573e Paolo Bonzini
    return 0;
89 98c8573e Paolo Bonzini
}
90 98c8573e Paolo Bonzini
91 98c8573e Paolo Bonzini
int kvm_has_vcpu_events(void)
92 98c8573e Paolo Bonzini
{
93 98c8573e Paolo Bonzini
    return 0;
94 98c8573e Paolo Bonzini
}
95 98c8573e Paolo Bonzini
96 98c8573e Paolo Bonzini
int kvm_has_robust_singlestep(void)
97 98c8573e Paolo Bonzini
{
98 98c8573e Paolo Bonzini
    return 0;
99 98c8573e Paolo Bonzini
}
100 98c8573e Paolo Bonzini
101 98c8573e Paolo Bonzini
void kvm_setup_guest_memory(void *start, size_t size)
102 98c8573e Paolo Bonzini
{
103 98c8573e Paolo Bonzini
}
104 98c8573e Paolo Bonzini
105 98c8573e Paolo Bonzini
int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap)
106 98c8573e Paolo Bonzini
{
107 98c8573e Paolo Bonzini
    tb_flush(env);
108 98c8573e Paolo Bonzini
    return 0;
109 98c8573e Paolo Bonzini
}
110 98c8573e Paolo Bonzini
111 98c8573e Paolo Bonzini
int kvm_insert_breakpoint(CPUState *current_env, target_ulong addr,
112 98c8573e Paolo Bonzini
                          target_ulong len, int type)
113 98c8573e Paolo Bonzini
{
114 98c8573e Paolo Bonzini
    return -EINVAL;
115 98c8573e Paolo Bonzini
}
116 98c8573e Paolo Bonzini
117 98c8573e Paolo Bonzini
int kvm_remove_breakpoint(CPUState *current_env, target_ulong addr,
118 98c8573e Paolo Bonzini
                          target_ulong len, int type)
119 98c8573e Paolo Bonzini
{
120 98c8573e Paolo Bonzini
    return -EINVAL;
121 98c8573e Paolo Bonzini
}
122 98c8573e Paolo Bonzini
123 98c8573e Paolo Bonzini
void kvm_remove_all_breakpoints(CPUState *current_env)
124 98c8573e Paolo Bonzini
{
125 98c8573e Paolo Bonzini
}
126 98c8573e Paolo Bonzini
127 98c8573e Paolo Bonzini
#ifndef _WIN32
128 98c8573e Paolo Bonzini
int kvm_set_signal_mask(CPUState *env, const sigset_t *sigset)
129 98c8573e Paolo Bonzini
{
130 98c8573e Paolo Bonzini
    abort();
131 98c8573e Paolo Bonzini
}
132 98c8573e Paolo Bonzini
#endif
133 98c8573e Paolo Bonzini
134 98c8573e Paolo Bonzini
int kvm_set_ioeventfd_pio_word(int fd, uint16_t addr, uint16_t val, bool assign)
135 98c8573e Paolo Bonzini
{
136 98c8573e Paolo Bonzini
    return -ENOSYS;
137 98c8573e Paolo Bonzini
}