qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL v2 6/7] qtest: Adapt vhost-user-test to latest vh


From: Linhaifeng
Subject: Re: [Qemu-devel] [PULL v2 6/7] qtest: Adapt vhost-user-test to latest vhost-user changes
Date: Sat, 13 Sep 2014 17:48:07 +0800
User-agent: Mozilla/5.0 (Windows NT 6.1; rv:31.0) Gecko/20100101 Thunderbird/31.1.0

How to test send data to VM?

On 2014/7/18 7:44, Michael S. Tsirkin wrote:
> From: Nikolay Nikolaev <address@hidden>
> 
> A new field mmap_offset was added in the vhost-user message, we need to 
> reflect
> this change in the test too.
> 
> Signed-off-by: Nikolay Nikolaev <address@hidden>
> Reviewed-by: Michael S. Tsirkin <address@hidden>
> Signed-off-by: Michael S. Tsirkin <address@hidden>
> ---
>  tests/vhost-user-test.c | 11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
> index 406ba70..75fedf0 100644
> --- a/tests/vhost-user-test.c
> +++ b/tests/vhost-user-test.c
> @@ -76,6 +76,7 @@ typedef struct VhostUserMemoryRegion {
>      uint64_t guest_phys_addr;
>      uint64_t memory_size;
>      uint64_t userspace_addr;
> +    uint64_t mmap_offset;
>  } VhostUserMemoryRegion;
>  
>  typedef struct VhostUserMemory {
> @@ -205,6 +206,7 @@ static void read_guest_mem(void)
>      uint32_t *guest_mem;
>      gint64 end_time;
>      int i, j;
> +    size_t size;
>  
>      g_mutex_lock(data_mutex);
>  
> @@ -231,8 +233,13 @@ static void read_guest_mem(void)
>  
>          g_assert_cmpint(memory.regions[i].memory_size, >, 1024);
>  
> -        guest_mem = mmap(0, memory.regions[i].memory_size,
> -        PROT_READ | PROT_WRITE, MAP_SHARED, fds[i], 0);
> +        size =  memory.regions[i].memory_size + 
> memory.regions[i].mmap_offset;
> +
> +        guest_mem = mmap(0, size, PROT_READ | PROT_WRITE,
> +                         MAP_SHARED, fds[i], 0);
> +
> +        g_assert(guest_mem != MAP_FAILED);
> +        guest_mem += (memory.regions[i].mmap_offset / sizeof(*guest_mem));
>  
>          for (j = 0; j < 256; j++) {
>              uint32_t a = readl(memory.regions[i].guest_phys_addr + j*4);
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]