From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36439) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Venj4-0004Db-5z for qemu-devel@nongnu.org; Fri, 08 Nov 2013 10:12:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Veniv-0007Q7-1B for qemu-devel@nongnu.org; Fri, 08 Nov 2013 10:11:58 -0500 Received: from mx1.redhat.com ([209.132.183.28]:29006) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Veniu-0007Pw-NS for qemu-devel@nongnu.org; Fri, 08 Nov 2013 10:11:48 -0500 Message-ID: <1383923328.2527.91.camel@localhost.localdomain> From: Marcel Apfelbaum Date: Fri, 08 Nov 2013 17:08:48 +0200 In-Reply-To: <527C9B4C.9000405@redhat.com> References: <1383511723-11228-1-git-send-email-marcel.a@redhat.com> <527C023F.2060506@redhat.com> <1383859470.2527.64.camel@localhost.localdomain> <527C06B5.2020401@redhat.com> <1383860314.2527.72.camel@localhost.localdomain> <527C9B4C.9000405@redhat.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] exec: fix regression by making system-memory region UINT64_MAX size List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Peter Maydell , "Michael S. Tsirkin" , Jan Kiszka , "edk2-devel@lists.sourceforge.net" , qemu-devel , Laszlo Ersek , Anthony Liguori , Jordan Justen , afaerber , Richard Henderson On Fri, 2013-11-08 at 09:05 +0100, Paolo Bonzini wrote: > Il 07/11/2013 22:51, Peter Maydell ha scritto: > >> > 1. Not all architectures have the behavior: "Address space that is not RAM(and friends) > >> > is for sure PCI". Only x86 behaves like this (I think). > > > > More specifically, the x86 pc behaves like this. Other > > x86 based systems could in theory behave differently > > (not that we actually model any, I think). > > After Marcel's patch, we have changed behavior for at least all boards > that pass get_system_memory() to pci_register_bus or pci_bus_new: > > * mips/gt64xxx_pci.c > > * pci-host/bonito.c > > * pci-host/ppce500.c > > * ppc/ppc4xx_pci.c > > * sh4/sh_pci.c > > These now will not go anymore through unassigned_mem_ops, which is a > behavioral change for MIPS boards (gt64xxx_pci and bonito) at least. > > Furthermore, the default behavior of the memory API _is_ read > all-ones/ignore writes, so I'm not sure what's the benefit of adding a > separate region for master abort... Actually, as I see, the default behavior of "system" memory region is to use unassigned_mem_ops that has valid.accepts method returning false (no read/write methods). I don't see that read all-ones/ignore writes is implemented. This was the main reason I submitted this patch. I had *no* clue that it would impact so much the system... I still think the patch is needed ans the guests will benefit from more accurate PCI spec emulation. Thanks, Marcel > > Paolo