Statistics
| Branch: | Revision:

root / kvm-stub.c @ 793553ac

History | View | Annotate | Download (2 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 "hw/hw.h"
15 2b41f10e Blue Swirl
#include "cpu.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_coalesce_mmio_region(target_phys_addr_t start, 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_uncoalesce_mmio_region(target_phys_addr_t start, ram_addr_t size)
41 98c8573e Paolo Bonzini
{
42 98c8573e Paolo Bonzini
    return -ENOSYS;
43 98c8573e Paolo Bonzini
}
44 98c8573e Paolo Bonzini
45 cad1e282 Jan Kiszka
int kvm_init(void)
46 98c8573e Paolo Bonzini
{
47 98c8573e Paolo Bonzini
    return -ENOSYS;
48 98c8573e Paolo Bonzini
}
49 98c8573e Paolo Bonzini
50 98c8573e Paolo Bonzini
void kvm_flush_coalesced_mmio_buffer(void)
51 98c8573e Paolo Bonzini
{
52 98c8573e Paolo Bonzini
}
53 98c8573e Paolo Bonzini
54 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_state(CPUState *env)
55 98c8573e Paolo Bonzini
{
56 98c8573e Paolo Bonzini
}
57 98c8573e Paolo Bonzini
58 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_post_reset(CPUState *env)
59 98c8573e Paolo Bonzini
{
60 98c8573e Paolo Bonzini
}
61 98c8573e Paolo Bonzini
62 98c8573e Paolo Bonzini
void kvm_cpu_synchronize_post_init(CPUState *env)
63 98c8573e Paolo Bonzini
{
64 98c8573e Paolo Bonzini
}
65 98c8573e Paolo Bonzini
66 98c8573e Paolo Bonzini
int kvm_cpu_exec(CPUState *env)
67 98c8573e Paolo Bonzini
{
68 98c8573e Paolo Bonzini
    abort ();
69 98c8573e Paolo Bonzini
}
70 98c8573e Paolo Bonzini
71 98c8573e Paolo Bonzini
int kvm_has_sync_mmu(void)
72 98c8573e Paolo Bonzini
{
73 98c8573e Paolo Bonzini
    return 0;
74 98c8573e Paolo Bonzini
}
75 98c8573e Paolo Bonzini
76 d2f2b8a7 Stefan Hajnoczi
int kvm_has_many_ioeventfds(void)
77 d2f2b8a7 Stefan Hajnoczi
{
78 d2f2b8a7 Stefan Hajnoczi
    return 0;
79 d2f2b8a7 Stefan Hajnoczi
}
80 d2f2b8a7 Stefan Hajnoczi
81 98c8573e Paolo Bonzini
void kvm_setup_guest_memory(void *start, size_t size)
82 98c8573e Paolo Bonzini
{
83 98c8573e Paolo Bonzini
}
84 98c8573e Paolo Bonzini
85 98c8573e Paolo Bonzini
int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap)
86 98c8573e Paolo Bonzini
{
87 4bef75b5 Jan Kiszka
    return -ENOSYS;
88 98c8573e Paolo Bonzini
}
89 98c8573e Paolo Bonzini
90 98c8573e Paolo Bonzini
int kvm_insert_breakpoint(CPUState *current_env, target_ulong addr,
91 98c8573e Paolo Bonzini
                          target_ulong len, int type)
92 98c8573e Paolo Bonzini
{
93 98c8573e Paolo Bonzini
    return -EINVAL;
94 98c8573e Paolo Bonzini
}
95 98c8573e Paolo Bonzini
96 98c8573e Paolo Bonzini
int kvm_remove_breakpoint(CPUState *current_env, target_ulong addr,
97 98c8573e Paolo Bonzini
                          target_ulong len, int type)
98 98c8573e Paolo Bonzini
{
99 98c8573e Paolo Bonzini
    return -EINVAL;
100 98c8573e Paolo Bonzini
}
101 98c8573e Paolo Bonzini
102 98c8573e Paolo Bonzini
void kvm_remove_all_breakpoints(CPUState *current_env)
103 98c8573e Paolo Bonzini
{
104 98c8573e Paolo Bonzini
}
105 98c8573e Paolo Bonzini
106 98c8573e Paolo Bonzini
#ifndef _WIN32
107 98c8573e Paolo Bonzini
int kvm_set_signal_mask(CPUState *env, const sigset_t *sigset)
108 98c8573e Paolo Bonzini
{
109 98c8573e Paolo Bonzini
    abort();
110 98c8573e Paolo Bonzini
}
111 98c8573e Paolo Bonzini
#endif
112 98c8573e Paolo Bonzini
113 98c8573e Paolo Bonzini
int kvm_set_ioeventfd_pio_word(int fd, uint16_t addr, uint16_t val, bool assign)
114 98c8573e Paolo Bonzini
{
115 98c8573e Paolo Bonzini
    return -ENOSYS;
116 98c8573e Paolo Bonzini
}
117 1fd74012 Cam Macdonell
118 1fd74012 Cam Macdonell
int kvm_set_ioeventfd_mmio_long(int fd, uint32_t adr, uint32_t val, bool assign)
119 1fd74012 Cam Macdonell
{
120 1fd74012 Cam Macdonell
    return -ENOSYS;
121 1fd74012 Cam Macdonell
}
122 c0532a76 Marcelo Tosatti
123 a1b87fe0 Jan Kiszka
int kvm_on_sigbus_vcpu(CPUState *env, int code, void *addr)
124 a1b87fe0 Jan Kiszka
{
125 a1b87fe0 Jan Kiszka
    return 1;
126 a1b87fe0 Jan Kiszka
}
127 a1b87fe0 Jan Kiszka
128 c0532a76 Marcelo Tosatti
int kvm_on_sigbus(int code, void *addr)
129 c0532a76 Marcelo Tosatti
{
130 c0532a76 Marcelo Tosatti
    return 1;
131 c0532a76 Marcelo Tosatti
}