diff options
Diffstat (limited to 'virt/kvm/kvm_main.c')
-rw-r--r-- | virt/kvm/kvm_main.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c index 5186e728c53e..da117a6b1e2e 100644 --- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c | |||
@@ -1961,7 +1961,9 @@ static int kvm_cpu_hotplug(struct notifier_block *notifier, unsigned long val, | |||
1961 | case CPU_STARTING: | 1961 | case CPU_STARTING: |
1962 | printk(KERN_INFO "kvm: enabling virtualization on CPU%d\n", | 1962 | printk(KERN_INFO "kvm: enabling virtualization on CPU%d\n", |
1963 | cpu); | 1963 | cpu); |
1964 | spin_lock(&kvm_lock); | ||
1964 | hardware_enable(NULL); | 1965 | hardware_enable(NULL); |
1966 | spin_unlock(&kvm_lock); | ||
1965 | break; | 1967 | break; |
1966 | } | 1968 | } |
1967 | return NOTIFY_OK; | 1969 | return NOTIFY_OK; |
@@ -2168,8 +2170,10 @@ static int kvm_suspend(struct sys_device *dev, pm_message_t state) | |||
2168 | 2170 | ||
2169 | static int kvm_resume(struct sys_device *dev) | 2171 | static int kvm_resume(struct sys_device *dev) |
2170 | { | 2172 | { |
2171 | if (kvm_usage_count) | 2173 | if (kvm_usage_count) { |
2174 | WARN_ON(spin_is_locked(&kvm_lock)); | ||
2172 | hardware_enable(NULL); | 2175 | hardware_enable(NULL); |
2176 | } | ||
2173 | return 0; | 2177 | return 0; |
2174 | } | 2178 | } |
2175 | 2179 | ||