From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51703) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XlH1k-0000q2-JS for qemu-devel@nongnu.org; Mon, 03 Nov 2014 07:46:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XlH1f-0000Ay-HX for qemu-devel@nongnu.org; Mon, 03 Nov 2014 07:46:32 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59296) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XlH1f-0000Am-B0 for qemu-devel@nongnu.org; Mon, 03 Nov 2014 07:46:27 -0500 Date: Mon, 3 Nov 2014 14:46:11 +0200 From: "Michael S. Tsirkin" Message-ID: <1415018633-16041-28-git-send-email-mst@redhat.com> References: <1415018633-16041-1-git-send-email-mst@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1415018633-16041-1-git-send-email-mst@redhat.com> Subject: [Qemu-devel] [PULL 27/29] vhost-user: fix mmap offset calculation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , Linhaifeng , Anthony Liguori qemu_get_ram_block_host_ptr should get ram_addr_t, vhost-user passes in GPA. That's very wrong. Reported-by: Linhaifeng Signed-off-by: Michael S. Tsirkin --- hw/virtio/vhost-user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index 4e88d9c..aefe0bb 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -226,7 +226,7 @@ static int vhost_user_call(struct vhost_dev *dev, unsigned long int request, msg.memory.regions[fd_num].memory_size = reg->memory_size; msg.memory.regions[fd_num].guest_phys_addr = reg->guest_phys_addr; msg.memory.regions[fd_num].mmap_offset = reg->userspace_addr - - (uintptr_t) qemu_get_ram_block_host_ptr(reg->guest_phys_addr); + (uintptr_t) qemu_get_ram_block_host_ptr(ram_addr); assert(fd_num < VHOST_MEMORY_MAX_NREGIONS); fds[fd_num++] = fd; } -- MST