From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45423) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WmlIc-0001tA-TA for qemu-devel@nongnu.org; Tue, 20 May 2014 10:45:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WmlIY-0006nH-AH for qemu-devel@nongnu.org; Tue, 20 May 2014 10:45:50 -0400 Received: from smtp.citrix.com ([66.165.176.89]:3699) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WmlIX-0006mV-Rv for qemu-devel@nongnu.org; Tue, 20 May 2014 10:45:46 -0400 Date: Tue, 20 May 2014 15:45:10 +0100 From: Anthony PERARD Message-ID: <20140520144510.GD4121@perard.uk.xensource.com> References: <1400237624-8505-1-git-send-email-tiejun.chen@intel.com> <1400237624-8505-5-git-send-email-tiejun.chen@intel.com> <1400481887.32155.34.camel@nilsson.home.kraxel.org> <1400498570.32155.59.camel@nilsson.home.kraxel.org> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: Subject: Re: [Qemu-devel] [v2][PATCH 4/8] xen, gfx passthrough: reserve 00:02.0 for INTEL IGD List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Chen, Tiejun" Cc: "peter.maydell@linaro.org" , "xen-devel@lists.xensource.com" , "mst@redhat.com" , "stefano.stabellini@eu.citrix.com" , "Kay, Allen M" , "Kelly.Zytaruk@amd.com" , "qemu-devel@nongnu.org" , Gerd Hoffmann , "anthony@codemonkey.ws" , "Zhang, Yang Z" On Mon, May 19, 2014 at 12:04:14PM +0000, Chen, Tiejun wrote: > > -----Original Message----- > > From: Gerd Hoffmann [mailto:kraxel@redhat.com] > > Sent: Monday, May 19, 2014 7:23 PM > > To: Chen, Tiejun > > Cc: anthony.perard@citrix.com; stefano.stabellini@eu.citrix.com; > > mst@redhat.com; Kelly.Zytaruk@amd.com; peter.maydell@linaro.org; > > xen-devel@lists.xensource.com; Kay, Allen M; qemu-devel@nongnu.org; > > jean.guyader@eu.citrix.com; anthony@codemonkey.ws; Zhang, Yang Z > > Subject: Re: [Qemu-devel] [v2][PATCH 4/8] xen, gfx passthrough: reserve > > 00:02.0 for INTEL IGD > > > > Hi, > > > > > I think '-vga none' just guarantees the qemu vga cards doesn't occupy > > > 00:02.0, but this doesn't mean others use this specific slot since in > > > qemu internal, we always pass -1 to assign a slot automatically to > > > register a PCI device. So in some cases, we can't get this slot as we > > > expect since that is already assigned previously before we need this. > > > > Yes, -vga, -net nic, -drive if=scsi (maybe more) can internally create pci devices > > with auto slot assignment, which will occupy slot 2 indeed. > > Use -device instead to create the devices. > > > > Are you saying we have to create the devices explicitly when we want to work IGD vga with passthrough? But how to make sure all user know this workable way? Maybe you suggest we should document somewhere. > > > > PCI: slot 2 function 0 not available for xen-pci-passthrough, in use > > > by xen-platform > > > > Ah, the xen platform device. /me looks. Ah, pc_xen_hvm_init creates this > > automatically. Two options here IMHO: > > > > (1) Just move it somewhere else explicitly. For example slot 3, or > > make it a southbridge function (say 00:01.7). > > (2) Don't create it automatically, instead expect management add it > > if needed, using -device xen-plaform,addr=... > > > > I personally would suggest to go for #2. As far I know the platform device is > > only needed if you want attach xenbus devices to the guest (correct?), so > > creating virtual machines without the xen platform device is a valid use case > > and you should allow it. > > > > Looks you recommend we should change current xen platform design, I'm not sure if something in libxl also need to be modified. Especially, this may not be compatible with those old xen version. And especially, how to guarantee no one occupy 00:02.0 in the future with auto assign? Hi, Libxl knows how to create a guest without xen-platform, but I think this can work only from QEMU 1.6 (which Xen 4.4 use). So, using the options below with libxl would put the xen-platform device away from the 00:02 slot. xen_platform_pci=0 device_model_args_hvm = [ '-device', 'xen-platform,addr=0x3' ] -- Anthony PERARD From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: Re: [v2][PATCH 4/8] xen, gfx passthrough: reserve 00:02.0 for INTEL IGD Date: Tue, 20 May 2014 15:45:10 +0100 Message-ID: <20140520144510.GD4121@perard.uk.xensource.com> References: <1400237624-8505-1-git-send-email-tiejun.chen@intel.com> <1400237624-8505-5-git-send-email-tiejun.chen@intel.com> <1400481887.32155.34.camel@nilsson.home.kraxel.org> <1400498570.32155.59.camel@nilsson.home.kraxel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Return-path: Content-Disposition: inline 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: "Chen, Tiejun" Cc: "peter.maydell@linaro.org" , "xen-devel@lists.xensource.com" , "mst@redhat.com" , "stefano.stabellini@eu.citrix.com" , "Kay, Allen M" , "Kelly.Zytaruk@amd.com" , "qemu-devel@nongnu.org" , Gerd Hoffmann , "anthony@codemonkey.ws" , "Zhang, Yang Z" List-Id: xen-devel@lists.xenproject.org On Mon, May 19, 2014 at 12:04:14PM +0000, Chen, Tiejun wrote: > > -----Original Message----- > > From: Gerd Hoffmann [mailto:kraxel@redhat.com] > > Sent: Monday, May 19, 2014 7:23 PM > > To: Chen, Tiejun > > Cc: anthony.perard@citrix.com; stefano.stabellini@eu.citrix.com; > > mst@redhat.com; Kelly.Zytaruk@amd.com; peter.maydell@linaro.org; > > xen-devel@lists.xensource.com; Kay, Allen M; qemu-devel@nongnu.org; > > jean.guyader@eu.citrix.com; anthony@codemonkey.ws; Zhang, Yang Z > > Subject: Re: [Qemu-devel] [v2][PATCH 4/8] xen, gfx passthrough: reserve > > 00:02.0 for INTEL IGD > > > > Hi, > > > > > I think '-vga none' just guarantees the qemu vga cards doesn't occupy > > > 00:02.0, but this doesn't mean others use this specific slot since in > > > qemu internal, we always pass -1 to assign a slot automatically to > > > register a PCI device. So in some cases, we can't get this slot as we > > > expect since that is already assigned previously before we need this. > > > > Yes, -vga, -net nic, -drive if=scsi (maybe more) can internally create pci devices > > with auto slot assignment, which will occupy slot 2 indeed. > > Use -device instead to create the devices. > > > > Are you saying we have to create the devices explicitly when we want to work IGD vga with passthrough? But how to make sure all user know this workable way? Maybe you suggest we should document somewhere. > > > > PCI: slot 2 function 0 not available for xen-pci-passthrough, in use > > > by xen-platform > > > > Ah, the xen platform device. /me looks. Ah, pc_xen_hvm_init creates this > > automatically. Two options here IMHO: > > > > (1) Just move it somewhere else explicitly. For example slot 3, or > > make it a southbridge function (say 00:01.7). > > (2) Don't create it automatically, instead expect management add it > > if needed, using -device xen-plaform,addr=... > > > > I personally would suggest to go for #2. As far I know the platform device is > > only needed if you want attach xenbus devices to the guest (correct?), so > > creating virtual machines without the xen platform device is a valid use case > > and you should allow it. > > > > Looks you recommend we should change current xen platform design, I'm not sure if something in libxl also need to be modified. Especially, this may not be compatible with those old xen version. And especially, how to guarantee no one occupy 00:02.0 in the future with auto assign? Hi, Libxl knows how to create a guest without xen-platform, but I think this can work only from QEMU 1.6 (which Xen 4.4 use). So, using the options below with libxl would put the xen-platform device away from the 00:02 slot. xen_platform_pci=0 device_model_args_hvm = [ '-device', 'xen-platform,addr=0x3' ] -- Anthony PERARD