From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:45711) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QMyMe-0004f3-Kq for qemu-devel@nongnu.org; Thu, 19 May 2011 04:13:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QMyMd-0003tN-P4 for qemu-devel@nongnu.org; Thu, 19 May 2011 04:13:48 -0400 Received: from mx1.redhat.com ([209.132.183.28]:37434) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QMyMd-0003tE-D3 for qemu-devel@nongnu.org; Thu, 19 May 2011 04:13:47 -0400 Message-ID: <4DD4D137.3030605@redhat.com> Date: Thu, 19 May 2011 11:13:43 +0300 From: Avi Kivity MIME-Version: 1.0 References: <4DD3C5B9.1080908@redhat.com> <4DD420A5.2020606@web.de> <4DD4CF76.2080904@redhat.com> <4DD4CFF5.6040805@web.de> In-Reply-To: <4DD4CFF5.6040805@web.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC] Memory API List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jan Kiszka Cc: qemu-devel On 05/19/2011 11:08 AM, Jan Kiszka wrote: > On 2011-05-19 10:06, Avi Kivity wrote: > > On 05/18/2011 10:40 PM, Jan Kiszka wrote: > >> On 2011-05-18 15:12, Avi Kivity wrote: > >> > void cpu_register_memory_region(MemoryRegion *mr, > >> target_phys_addr_t addr); > >> > >> OK, let's allow overlapping, but make it explicit: > >> > >> void cpu_register_memory_region_overlap(MemoryRegion *mr, > >> target_phys_addr_t addr, > >> int priority); > >> > >> We need that ordering, so we need an interface. Regions registered via > >> cpu_register_memory_region must not overlap with existing one or we will > >> throw an hwerror. And they shall get a low default priority. > >> > > > > PCI BARs can overlap with anything. So any region can overlap with any > > other region. > > I know, but that result is unspecified anyway. The user (guest OS) can't > expect any reasonable result. We rather need priorities for useful > overlapping. Unspecified doesn't mean abort. It means we need to specify something (which translates to: we get to pick the priorities). -- error compiling committee.c: too many arguments to function