From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58710) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QrY0I-0001O1-B9 for qemu-devel@nongnu.org; Thu, 11 Aug 2011 12:21:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QrY0D-00043N-T8 for qemu-devel@nongnu.org; Thu, 11 Aug 2011 12:21:06 -0400 Received: from mx1.redhat.com ([209.132.183.28]:53974) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QrY0D-00043J-IX for qemu-devel@nongnu.org; Thu, 11 Aug 2011 12:21:01 -0400 Message-ID: <4E440169.8030403@redhat.com> Date: Thu, 11 Aug 2011 19:20:57 +0300 From: Avi Kivity MIME-Version: 1.0 References: <1313048426-17273-1-git-send-email-avi@redhat.com> <4E43927B.90606@redhat.com> <4E4392F7.8020002@redhat.com> <4E43A482.5040401@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 0/2] Fix wide ioport access cracking List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerhard Wiesinger Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org On 08/11/2011 07:08 PM, Gerhard Wiesinger wrote: > > (gdb) frame 4 > #4 0x000000000041eb9b in pci_update_mappings (d=0x1a90bc0) > at /root/download/qemu/git/qemu-kvm-test/hw/pci.c:1134 > 1134 memory_region_del_subregion(r->address_space, > r->memory); > (gdb) print i > $1 = > (gdb) print *r > $2 = {addr = 22058952032257, size = 32, filtered_size = > 171717340864446496, > type = 1 '\001', memory = 0x1a90000, address_space = 0x200019282f0} > (gdb) print d->io_regions[0] > $3 = {addr = 22058952032257, size = 32, filtered_size = > 171717340864446496, > type = 1 '\001', memory = 0x1a90000, address_space = 0x200019282f0} Yikes, this looks like corruption, it the leading 0x2000 in address_space is out of place. Can you step through lsi pci bar registration and place a data breakpoint on address_space, and see where it gets this value? 'addr' looks bad too. -- error compiling committee.c: too many arguments to function