From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40827) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X1ng2-0004JR-UI for qemu-devel@nongnu.org; Mon, 30 Jun 2014 22:20:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X1nfw-0003lW-PV for qemu-devel@nongnu.org; Mon, 30 Jun 2014 22:20:10 -0400 Received: from mga02.intel.com ([134.134.136.20]:37578) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X1nfw-0003fD-K5 for qemu-devel@nongnu.org; Mon, 30 Jun 2014 22:20:04 -0400 Message-ID: <53B21AC8.4030701@intel.com> Date: Tue, 01 Jul 2014 10:19:52 +0800 From: "Chen, Tiejun" MIME-Version: 1.0 References: <1403662641-28526-1-git-send-email-tiejun.chen@intel.com> <1403662641-28526-5-git-send-email-tiejun.chen@intel.com> <53AA6B2D.2030804@redhat.com> <53AD2C8E.8030009@intel.com> <53AD54FD.4010807@redhat.com> <53AFC69A.801@intel.com> <20140629121417.GC26161@redhat.com> <53B0D106.6040401@intel.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [v5][PATCH 4/5] xen, gfx passthrough: create host bridge to passthrough List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: peter.maydell@linaro.org, xen-devel@lists.xensource.com, "Michael S. Tsirkin" , allen.m.kay@intel.com, Kelly.Zytaruk@amd.com, qemu-devel@nongnu.org, yang.z.zhang@intel.com, anthony@codemonkey.ws, anthony.perard@citrix.com, Paolo Bonzini On 2014/7/1 3:42, Stefano Stabellini wrote: > On Mon, 30 Jun 2014, Chen, Tiejun wrote: >> On 2014/6/29 20:14, Michael S. Tsirkin wrote: >>> On Sun, Jun 29, 2014 at 03:56:10PM +0800, Chen, Tiejun wrote: >>>> On 2014/6/27 19:26, Paolo Bonzini wrote: >>>>> Il 27/06/2014 10:34, Chen, Tiejun ha scritto: >>>>>> >>>>>> >>>>>> So how to separate this to specific to xen? Or you mean we need to >>>>>> create an new machine to address this scenario? But actually this is >>>>>> same as xenfv_machine except for these little codes. >>>>> >>>>> Yes, please create a new machine so that "-M pc" doesn't have any of >>>>> these hacks. >>>> >>>> But regardless of the machine is 'xenfv' or 'pc', we always call >>>> pc_init_pci(), then inside, i440fx_init() is always performed. So I think >>>> even we create a new machine, shouldn't we still call pc_init_pci()? >>>> >>>>> >>>>> Note that "-M xenfv" is obsolete, Xen can now use "-M pc" (i.e. the >>>>> default). >>>>> >>>> >>>> Yes, Xen can use 'pc'. >>>> >>>> Thanks >>>> Tiejun >>> >>> You are creating a new machine type where the pci host >>> looks like MCH but a bunch of other things are from i440fx. >> >> Anthony, >> >> Any comments to address this in xen case? > > Having a separate machine for this is reasonable. You can select the > right one from libxl anyway. From the name point of view I would go with > "xenigd". Do this mean we need to change something libxl? > Just take a look at xenfv and introduce something similar but specific > to your IGD PT use case. > Which PCIe machine should I refer? i440fx or q35? Thanks Tiejun > >> Thanks >> Tiejun >> >>> >>> I have some doubts about this combination being worth supporting - it >>> does not seem useful for anything except xen from the code you posted, >>> but maybe you can whittle down the number of places where you poke at >>> the host to make it reasonable: I can imagine that, if you are lucky and >>> the registers that i915 wants to poke to make it work on real hardware >>> happen to fall on top of reserved registers in the i440FX/PIIX3 pci >>> bridge. OTOH it would be much more likely if you just start with >>> something that does have MCH, like Q35, or emulate a newer >>> machine type. This is the path that people who wanted >>> to boot iOS on QEMU took, and the result is pretty good. >>> >>> But regardless, this is clearly not a i440fx nor a q35 pc >>> so it needs a separate name. >>> >> > From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Chen, Tiejun" Subject: Re: [v5][PATCH 4/5] xen, gfx passthrough: create host bridge to passthrough Date: Tue, 01 Jul 2014 10:19:52 +0800 Message-ID: <53B21AC8.4030701@intel.com> References: <1403662641-28526-1-git-send-email-tiejun.chen@intel.com> <1403662641-28526-5-git-send-email-tiejun.chen@intel.com> <53AA6B2D.2030804@redhat.com> <53AD2C8E.8030009@intel.com> <53AD54FD.4010807@redhat.com> <53AFC69A.801@intel.com> <20140629121417.GC26161@redhat.com> <53B0D106.6040401@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org Sender: qemu-devel-bounces+gceq-qemu-devel=gmane.org@nongnu.org To: Stefano Stabellini Cc: peter.maydell@linaro.org, xen-devel@lists.xensource.com, "Michael S. Tsirkin" , allen.m.kay@intel.com, Kelly.Zytaruk@amd.com, qemu-devel@nongnu.org, yang.z.zhang@intel.com, anthony@codemonkey.ws, anthony.perard@citrix.com, Paolo Bonzini List-Id: xen-devel@lists.xenproject.org On 2014/7/1 3:42, Stefano Stabellini wrote: > On Mon, 30 Jun 2014, Chen, Tiejun wrote: >> On 2014/6/29 20:14, Michael S. Tsirkin wrote: >>> On Sun, Jun 29, 2014 at 03:56:10PM +0800, Chen, Tiejun wrote: >>>> On 2014/6/27 19:26, Paolo Bonzini wrote: >>>>> Il 27/06/2014 10:34, Chen, Tiejun ha scritto: >>>>>> >>>>>> >>>>>> So how to separate this to specific to xen? Or you mean we need to >>>>>> create an new machine to address this scenario? But actually this is >>>>>> same as xenfv_machine except for these little codes. >>>>> >>>>> Yes, please create a new machine so that "-M pc" doesn't have any of >>>>> these hacks. >>>> >>>> But regardless of the machine is 'xenfv' or 'pc', we always call >>>> pc_init_pci(), then inside, i440fx_init() is always performed. So I think >>>> even we create a new machine, shouldn't we still call pc_init_pci()? >>>> >>>>> >>>>> Note that "-M xenfv" is obsolete, Xen can now use "-M pc" (i.e. the >>>>> default). >>>>> >>>> >>>> Yes, Xen can use 'pc'. >>>> >>>> Thanks >>>> Tiejun >>> >>> You are creating a new machine type where the pci host >>> looks like MCH but a bunch of other things are from i440fx. >> >> Anthony, >> >> Any comments to address this in xen case? > > Having a separate machine for this is reasonable. You can select the > right one from libxl anyway. From the name point of view I would go with > "xenigd". Do this mean we need to change something libxl? > Just take a look at xenfv and introduce something similar but specific > to your IGD PT use case. > Which PCIe machine should I refer? i440fx or q35? Thanks Tiejun > >> Thanks >> Tiejun >> >>> >>> I have some doubts about this combination being worth supporting - it >>> does not seem useful for anything except xen from the code you posted, >>> but maybe you can whittle down the number of places where you poke at >>> the host to make it reasonable: I can imagine that, if you are lucky and >>> the registers that i915 wants to poke to make it work on real hardware >>> happen to fall on top of reserved registers in the i440FX/PIIX3 pci >>> bridge. OTOH it would be much more likely if you just start with >>> something that does have MCH, like Q35, or emulate a newer >>> machine type. This is the path that people who wanted >>> to boot iOS on QEMU took, and the result is pretty good. >>> >>> But regardless, this is clearly not a i440fx nor a q35 pc >>> so it needs a separate name. >>> >> >