From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: [PULL 6/6] vfio: Fix debug output for int128 values Date: Thu, 03 Oct 2013 09:39:58 -0600 Message-ID: <20131003153943.26487.458.stgit@bling.home> References: <20131003153601.26487.70022.stgit@bling.home> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Cc: aik@ozlabs.ru, qemu-devel@nongnu.org, kvm@vger.kernel.org To: anthony@codemonkey.ws Return-path: Received: from mx1.redhat.com ([209.132.183.28]:64198 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753977Ab3JCPkB (ORCPT ); Thu, 3 Oct 2013 11:40:01 -0400 In-Reply-To: <20131003153601.26487.70022.stgit@bling.home> Sender: kvm-owner@vger.kernel.org List-ID: From: Alexey Kardashevskiy Memory regions can easily be 2^64 byte long and therefore overflow for just a bit but that is enough for int128_get64() to assert. This takes care of debug printing of huge section sizes. Signed-off-by: Alexey Kardashevskiy Signed-off-by: Alex Williamson --- hw/misc/vfio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/misc/vfio.c b/hw/misc/vfio.c index 0c9bb95..68e25bd 100644 --- a/hw/misc/vfio.c +++ b/hw/misc/vfio.c @@ -2084,7 +2084,8 @@ static void vfio_listener_region_add(MemoryListener *listener, if (vfio_listener_skipped_section(section)) { DPRINTF("SKIPPING region_add %"HWADDR_PRIx" - %"PRIx64"\n", section->offset_within_address_space, - section->offset_within_address_space + section->size - 1); + section->offset_within_address_space + + int128_get64(int128_sub(section->size, int128_one()))); return; } @@ -2129,7 +2130,8 @@ static void vfio_listener_region_del(MemoryListener *listener, if (vfio_listener_skipped_section(section)) { DPRINTF("SKIPPING region_del %"HWADDR_PRIx" - %"PRIx64"\n", section->offset_within_address_space, - section->offset_within_address_space + section->size - 1); + section->offset_within_address_space + + int128_get64(int128_sub(section->size, int128_one()))); return; }