diff options
Diffstat (limited to 'arch/arm/include/asm/kvm_host.h')
-rw-r--r-- | arch/arm/include/asm/kvm_host.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h index ca56537b61bc..50e89869178a 100644 --- a/arch/arm/include/asm/kvm_host.h +++ b/arch/arm/include/asm/kvm_host.h | |||
@@ -48,6 +48,7 @@ | |||
48 | #define KVM_REQ_SLEEP \ | 48 | #define KVM_REQ_SLEEP \ |
49 | KVM_ARCH_REQ_FLAGS(0, KVM_REQUEST_WAIT | KVM_REQUEST_NO_WAKEUP) | 49 | KVM_ARCH_REQ_FLAGS(0, KVM_REQUEST_WAIT | KVM_REQUEST_NO_WAKEUP) |
50 | #define KVM_REQ_IRQ_PENDING KVM_ARCH_REQ(1) | 50 | #define KVM_REQ_IRQ_PENDING KVM_ARCH_REQ(1) |
51 | #define KVM_REQ_VCPU_RESET KVM_ARCH_REQ(2) | ||
51 | 52 | ||
52 | DECLARE_STATIC_KEY_FALSE(userspace_irqchip_in_use); | 53 | DECLARE_STATIC_KEY_FALSE(userspace_irqchip_in_use); |
53 | 54 | ||
@@ -147,6 +148,13 @@ struct kvm_cpu_context { | |||
147 | 148 | ||
148 | typedef struct kvm_cpu_context kvm_cpu_context_t; | 149 | typedef struct kvm_cpu_context kvm_cpu_context_t; |
149 | 150 | ||
151 | struct vcpu_reset_state { | ||
152 | unsigned long pc; | ||
153 | unsigned long r0; | ||
154 | bool be; | ||
155 | bool reset; | ||
156 | }; | ||
157 | |||
150 | struct kvm_vcpu_arch { | 158 | struct kvm_vcpu_arch { |
151 | struct kvm_cpu_context ctxt; | 159 | struct kvm_cpu_context ctxt; |
152 | 160 | ||
@@ -186,6 +194,8 @@ struct kvm_vcpu_arch { | |||
186 | /* Cache some mmu pages needed inside spinlock regions */ | 194 | /* Cache some mmu pages needed inside spinlock regions */ |
187 | struct kvm_mmu_memory_cache mmu_page_cache; | 195 | struct kvm_mmu_memory_cache mmu_page_cache; |
188 | 196 | ||
197 | struct vcpu_reset_state reset_state; | ||
198 | |||
189 | /* Detect first run of a vcpu */ | 199 | /* Detect first run of a vcpu */ |
190 | bool has_run_once; | 200 | bool has_run_once; |
191 | }; | 201 | }; |