[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] KVM: fix addr type for KVM_IOEVENTFD
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH] KVM: fix addr type for KVM_IOEVENTFD |
Date: |
Wed, 15 Jan 2014 10:01:40 +0200 |
On Fri, Jan 10, 2014 at 06:20:18PM +1100, Alexey Kardashevskiy wrote:
> The @addr here is a guest physical address and can easily be bigger
> than 4G.
>
> This changes uint32_t to hwaddr.
>
> Cc: Michael S. Tsirkin <address@hidden>
> Signed-off-by: Alexey Kardashevskiy <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
> ---
>
> This was found during investigation why vhost is not always working
> on PPC64-spapr. It turned out that KVM_IOEVENTFD was called with a 32bit
> address
> while the actual guest physycal address for that PCI host bus was
> 0x100.0000.0000
> and __kvm_io_bus_write() in the host kernel would never succeed.
>
> ---
> kvm-all.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kvm-all.c b/kvm-all.c
> index 3937754..dcd7cdd 100644
> --- a/kvm-all.c
> +++ b/kvm-all.c
> @@ -519,7 +519,7 @@ int kvm_check_extension(KVMState *s, unsigned int
> extension)
> return ret;
> }
>
> -static int kvm_set_ioeventfd_mmio(int fd, uint32_t addr, uint32_t val,
> +static int kvm_set_ioeventfd_mmio(int fd, hwaddr addr, uint32_t val,
> bool assign, uint32_t size, bool datamatch)
> {
> int ret;
> --
> 1.8.4.rc4
>