Re: [PATCH] PPC: Adjust memory slot accesses to recent patches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2010-01-03, Alexander Graf <agraf@xxxxxxx> wrote:
> Commit 18657960237322b8f6ba84938d27524634212aaf apparently broke PPC Book3S
> compilation. This patch tries to mechanically fix it.
>
> Marcelo, please look over it if I'm doing the right thing.
>
> Signed-off-by: Alexander Graf <agraf@xxxxxxx>
> Reported-by: Giuseppe Falsetti <giuseppe@xxxxxxxx>
> CC: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
> ---
>  arch/powerpc/kvm/book3s.c  |    6 +++---
>  arch/powerpc/kvm/powerpc.c |   17 +++++++++++++----
>  2 files changed, 16 insertions(+), 7 deletions(-)
>
> diff --git a/arch/powerpc/kvm/book3s.c b/arch/powerpc/kvm/book3s.c
> index 803505d..492dcc1 100644
> --- a/arch/powerpc/kvm/book3s.c
> +++ b/arch/powerpc/kvm/book3s.c
> @@ -857,7 +857,7 @@ int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm,
>  	int is_dirty = 0;
>  	int r, n;
>
> -	down_write(&kvm->slots_lock);
> +	mutex_lock(&kvm->slots_lock);
>
>  	r = kvm_get_dirty_log(kvm, log, &is_dirty);
>  	if (r)
> @@ -865,7 +865,7 @@ int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm,
>
>  	/* If nothing is dirty, don't bother messing with page tables. */
>  	if (is_dirty) {
> -		memslot = &kvm->memslots[log->slot];
> +		memslot = &kvm->memslots->memslots[log->slot];
>
>  		ga = memslot->base_gfn << PAGE_SHIFT;
>  		ga_end = ga + (memslot->npages << PAGE_SHIFT);
> @@ -879,7 +879,7 @@ int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm,
>
>  	r = 0;
>  out:
> -	up_write(&kvm->slots_lock);
> +	mutex_unlock(&kvm->slots_lock);
>  	return r;
>  }
>
> diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
> index f06cf93..5ba1865 100644
> --- a/arch/powerpc/kvm/powerpc.c
> +++ b/arch/powerpc/kvm/powerpc.c
> @@ -165,14 +165,23 @@ long kvm_arch_dev_ioctl(struct file *filp,
>  	return -EINVAL;
>  }
>
> -int kvm_arch_set_memory_region(struct kvm *kvm,
> -                               struct kvm_userspace_memory_region *mem,
> -                               struct kvm_memory_slot old,
> -                               int user_alloc)
> +int kvm_arch_prepare_memory_region(struct kvm *kvm,
> +                                   struct kvm_memory_slot *memslot,
> +                                   struct kvm_memory_slot old,
> +                                   int user_alloc)
>  {
>  	return 0;
>  }
>
> +void kvm_arch_commit_memory_region(struct kvm *kvm,
> +               struct kvm_userspace_memory_region *mem,
> +               struct kvm_memory_slot old,
> +               int user_alloc)
> +{
> +       return;
> +}
> +
> +
>  void kvm_arch_flush_shadow(struct kvm *kvm)
>  {
>  }
> --
> 1.6.0.2
>
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

-- 
Sent from my mobile device

-Tapio
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux