diff options
author | Max Bruning <max@joyent.com> | 2011-06-27 00:09:19 -0700 |
---|---|---|
committer | Max Bruning <max@joyent.com> | 2011-06-27 00:10:28 -0700 |
commit | 2da0b1292c437a43942d8cb12df8cf21cca0a83f (patch) | |
tree | 5820058844248270331b69a25b28cd463d8d11a7 /kvm_x86.c | |
parent | 4f4e1e2653498155250e5d1d2fff8519f462a9ea (diff) | |
download | illumos-kvm-2da0b1292c437a43942d8cb12df8cf21cca0a83f.tar.gz |
HVM-417 kmem_cache_destroy not called for all kmem caches on driver unload
Diffstat (limited to 'kvm_x86.c')
-rw-r--r-- | kvm_x86.c | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -3627,21 +3627,29 @@ __vcpu_run(struct kvm_vcpu *vcpu) } } + KVM_TRACE3(vcpu__run, char *, __FILE__, int, __LINE__, int, r); if (r <= 0) break; clear_bit(KVM_REQ_PENDING_TIMER, &vcpu->requests); - if (kvm_cpu_has_pending_timer(vcpu)) + if (kvm_cpu_has_pending_timer(vcpu)) { + KVM_TRACE3(vcpu__run, char *, __FILE__, int, __LINE__, + uint64_t, vcpu); kvm_inject_pending_timer_irqs(vcpu); + } if (dm_request_for_irq_injection(vcpu)) { r = -EINTR; + KVM_TRACE3(vcpu__run, char *, __FILE__, int, __LINE__, + uint64_t, vcpu); vcpu->run->exit_reason = KVM_EXIT_INTR; KVM_VCPU_KSTAT_INC(vcpu, kvmvs_irq_exits); } if (issig(JUSTLOOKING)) { r = -EINTR; + KVM_TRACE3(vcpu__run, char *, __FILE__, int, __LINE__, + uint64_t, vcpu); vcpu->run->exit_reason = KVM_EXIT_INTR; KVM_VCPU_KSTAT_INC(vcpu, kvmvs_signal_exits); } @@ -3651,6 +3659,8 @@ __vcpu_run(struct kvm_vcpu *vcpu) #else XXX_KVM_SYNC_PROBE; #endif + KVM_TRACE3(vcpu__run, char *, __FILE__, int, __LINE__, + uint64_t, vcpu); post_kvm_run_save(vcpu); vapic_exit(vcpu); |