>
> diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
> index b1953ee..f605bba 100644
> --- a/virt/kvm/kvm_main.c
> +++ b/virt/kvm/kvm_main.c
> @@ -735,11 +735,17 @@ int __kvm_set_memory_region(struct kvm *kvm,
>        base_gfn = mem->guest_phys_addr >> PAGE_SHIFT;
>        npages = mem->memory_size >> PAGE_SHIFT;
>
> -       if (!npages)
> -               mem->flags &= ~KVM_MEM_LOG_DIRTY_PAGES;
> -
>        new = old = *memslot;
>
> +        if (!npages) {
> +                mem->flags &= ~KVM_MEM_LOG_DIRTY_PAGES;
> +                kvm_arch_flush_shadow(kvm);
> +                kvm_free_physmem_slot(memslot, NULL);
> +                kvm_arch_set_memory_region(kvm, mem, old, user_alloc);
> +                goto out;
> +        }
> +
> +
>        new.base_gfn = base_gfn;

Any comments about this version? In the absense of it, I'll submit a
version with a SoB for inclusion.
>        new.npages = npages;
>        new.flags = mem->flags;
> @@ -812,9 +818,6 @@ int __kvm_set_memory_region(struct kvm *kvm,
>        }
>  #endif /* not defined CONFIG_S390 */
>
> -       if (!npages)
> -               kvm_arch_flush_shadow(kvm);
> -
>        spin_lock(&kvm->mmu_lock);
>        if (mem->slot >= kvm->nmemslots)
>                kvm->nmemslots = mem->slot + 1;
>
>



-- 
Glauber  Costa.
"Free as in Freedom"
http://glommer.net

"The less confident you are, the more serious you have to act."
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to