From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:37195) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QN3c4-0003oZ-Gk for qemu-devel@nongnu.org; Thu, 19 May 2011 09:50:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QN3c3-0001Kl-Hy for qemu-devel@nongnu.org; Thu, 19 May 2011 09:50:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:4959) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QN3c3-0001Kf-8p for qemu-devel@nongnu.org; Thu, 19 May 2011 09:50:03 -0400 Message-ID: <4DD52006.9050401@redhat.com> Date: Thu, 19 May 2011 16:49:58 +0300 From: Avi Kivity MIME-Version: 1.0 References: <4DD3C5B9.1080908@redhat.com> <4DD3D236.90708@siemens.com> <4DD3D95E.2060105@redhat.com> <4DD3E1B3.3020405@siemens.com> <4DD3E47F.9060104@redhat.com> <4DD3E782.8090208@siemens.com> <4DD3E8D6.6090807@redhat.com> <20110519090851.GD28399@redhat.com> <4DD4DE8E.8030402@redhat.com> <4DD51EAC.4080505@codemonkey.ws> In-Reply-To: <4DD51EAC.4080505@codemonkey.ws> Content-Type: text/plain; charset=ISO-8859-1; 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: Anthony Liguori Cc: Jan Kiszka , qemu-devel , Gleb Natapov On 05/19/2011 04:44 PM, Anthony Liguori wrote: > > The i440fx may direct VGA accesses to RAM depending on the SMM > registers. By the time the PIIX gets the I/O request, we're past the > memory controller. > > This is my biggest concern about this whole notion of "priority". > These sort of issues are not dealt with by a simple z-ordering. There > is logic in each component that may be arbitrarily complex. > > We're going to end up having to dynamically change the "priority" > based how registers are programmed. But priorities are relative so > it's unclear to me how the I440FX would prioritize RAM over dispatch > to PIIX (for VGA, for instance). You can change priorities by removing the region and re-adding it with a different priority. In practice I don't think this is ever necessary; we'll have fixed priorities and dynamic addition and removal. For the per-cpu SMM case the only reasonable solution I see is a per-cpu memory map (= root region). -- error compiling committee.c: too many arguments to function