diff options
author | max <max@maxpad.(none)> | 2010-12-26 13:22:48 +0100 |
---|---|---|
committer | max <max@maxpad.(none)> | 2010-12-26 13:22:48 +0100 |
commit | 94afd93685ef1dae2f8b61e10a5bfe63eab6c651 (patch) | |
tree | fe93b9ee7d929d97e740017d1943c1333516ebd5 /kvm.h | |
parent | 74210da6801d87dcf9552c97497a60da88c99bde (diff) | |
download | illumos-kvm-94afd93685ef1dae2f8b61e10a5bfe63eab6c651.tar.gz |
More code added, qemu userland gets segv
Diffstat (limited to 'kvm.h')
-rw-r--r-- | kvm.h | 22 |
1 files changed, 20 insertions, 2 deletions
@@ -876,6 +876,24 @@ struct pvclock_wall_clock { #ifdef _KERNEL +struct kvm_shadow_walk_iterator { + uint64_t addr; + hpa_t shadow_addr; + int level; + uint64_t *sptep; + unsigned index; +}; + +extern void shadow_walk_init(struct kvm_shadow_walk_iterator *iterator, + struct kvm_vcpu *vcpu, uint64_t addr); +extern int shadow_walk_okay(struct kvm_shadow_walk_iterator *iterator); +extern void shadow_walk_next(struct kvm_shadow_walk_iterator *iterator); + +#define for_each_shadow_entry(_vcpu, _addr, _walker) \ + for (shadow_walk_init(&(_walker), _vcpu, _addr); \ + shadow_walk_okay(&(_walker)); \ + shadow_walk_next(&(_walker))) + struct kvm { kmutex_t mmu_lock; kmutex_t requests_lock; @@ -910,11 +928,11 @@ struct kvm { /*#endif*/ kmutex_t irq_lock; -#ifdef CONFIG_HAVE_KVM_IRQCHIP +/*#ifdef CONFIG_HAVE_KVM_IRQCHIP*/ struct kvm_irq_routing_table *irq_routing; list_t mask_notifier_list; list_t irq_ack_notifier_list; -#endif +/*#endif*/ #ifdef XXX #ifdef KVM_ARCH_WANT_MMU_NOTIFIER |