~jderose/ubuntu/raring/qemu/vde-again

« back to all changes in this revision

Viewing changes to kvm.h

  • Committer: Bazaar Package Importer
  • Author(s): Aurelien Jarno, Aurelien Jarno
  • Date: 2009-03-22 10:13:17 UTC
  • mfrom: (1.2.1 upstream) (6.1.1 sid)
  • Revision ID: james.westby@ubuntu.com-20090322101317-iigjtnu5qil35dtb
Tags: 0.10.1-1
[ Aurelien Jarno ]
* New upstream stable release:
  - patches/80_stable-branch.patch: remove.
* debian/control: 
  - Remove depends on proll.
  - Move depends on device-tree-compiler to build-depends.
  - Bump Standards-Version to 3.8.1 (no changes).
* patches/82_qemu-img_decimal.patch: new patch from upstream to make
  qemu-img accept sizes with decimal values (closes: bug#501400).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * QEMU KVM support
 
3
 *
 
4
 * Copyright IBM, Corp. 2008
 
5
 *
 
6
 * Authors:
 
7
 *  Anthony Liguori   <aliguori@us.ibm.com>
 
8
 *
 
9
 * This work is licensed under the terms of the GNU GPL, version 2 or later.
 
10
 * See the COPYING file in the top-level directory.
 
11
 *
 
12
 */
 
13
 
 
14
#ifndef QEMU_KVM_H
 
15
#define QEMU_KVM_H
 
16
 
 
17
#include "config.h"
 
18
 
 
19
#ifdef CONFIG_KVM
 
20
extern int kvm_allowed;
 
21
 
 
22
#define kvm_enabled() (kvm_allowed)
 
23
#else
 
24
#define kvm_enabled() (0)
 
25
#endif
 
26
 
 
27
struct kvm_run;
 
28
 
 
29
/* external API */
 
30
 
 
31
int kvm_init(int smp_cpus);
 
32
 
 
33
int kvm_init_vcpu(CPUState *env);
 
34
int kvm_sync_vcpus(void);
 
35
 
 
36
int kvm_cpu_exec(CPUState *env);
 
37
 
 
38
void kvm_set_phys_mem(target_phys_addr_t start_addr,
 
39
                      ram_addr_t size,
 
40
                      ram_addr_t phys_offset);
 
41
 
 
42
void kvm_physical_sync_dirty_bitmap(target_phys_addr_t start_addr, target_phys_addr_t end_addr);
 
43
 
 
44
int kvm_log_start(target_phys_addr_t phys_addr, target_phys_addr_t len);
 
45
int kvm_log_stop(target_phys_addr_t phys_addr, target_phys_addr_t len);
 
46
 
 
47
int kvm_has_sync_mmu(void);
 
48
 
 
49
int kvm_coalesce_mmio_region(target_phys_addr_t start, ram_addr_t size);
 
50
int kvm_uncoalesce_mmio_region(target_phys_addr_t start, ram_addr_t size);
 
51
 
 
52
/* internal API */
 
53
 
 
54
struct KVMState;
 
55
typedef struct KVMState KVMState;
 
56
 
 
57
int kvm_ioctl(KVMState *s, int type, ...);
 
58
 
 
59
int kvm_vm_ioctl(KVMState *s, int type, ...);
 
60
 
 
61
int kvm_vcpu_ioctl(CPUState *env, int type, ...);
 
62
 
 
63
/* Arch specific hooks */
 
64
 
 
65
int kvm_arch_post_run(CPUState *env, struct kvm_run *run);
 
66
 
 
67
int kvm_arch_handle_exit(CPUState *env, struct kvm_run *run);
 
68
 
 
69
int kvm_arch_pre_run(CPUState *env, struct kvm_run *run);
 
70
 
 
71
int kvm_arch_get_registers(CPUState *env);
 
72
 
 
73
int kvm_arch_put_registers(CPUState *env);
 
74
 
 
75
int kvm_arch_init(KVMState *s, int smp_cpus);
 
76
 
 
77
int kvm_arch_init_vcpu(CPUState *env);
 
78
 
 
79
#endif