|
@@ -4387,8 +4387,10 @@ void kvm_mmu_invalidate_mmio_sptes(struct kvm *kvm)
|
|
* The max value is MMIO_MAX_GEN - 1 since it is not called
|
|
* The max value is MMIO_MAX_GEN - 1 since it is not called
|
|
* when mark memslot invalid.
|
|
* when mark memslot invalid.
|
|
*/
|
|
*/
|
|
- if (unlikely(kvm_current_mmio_generation(kvm) >= (MMIO_MAX_GEN - 1)))
|
|
|
|
|
|
+ if (unlikely(kvm_current_mmio_generation(kvm) >= (MMIO_MAX_GEN - 1))) {
|
|
|
|
+ printk_ratelimited(KERN_INFO "kvm: zapping shadow pages for mmio generation wraparound\n");
|
|
kvm_mmu_invalidate_zap_all_pages(kvm);
|
|
kvm_mmu_invalidate_zap_all_pages(kvm);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
static int mmu_shrink(struct shrinker *shrink, struct shrink_control *sc)
|
|
static int mmu_shrink(struct shrinker *shrink, struct shrink_control *sc)
|