All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: "peter.maydell@linaro.org" <peter.maydell@linaro.org>,
	"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	"mst@redhat.com" <mst@redhat.com>,
	"stefano.stabellini@eu.citrix.com"
	<stefano.stabellini@eu.citrix.com>,
	"Kay, Allen M" <allen.m.kay@intel.com>,
	"Kelly.Zytaruk@amd.com" <Kelly.Zytaruk@amd.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"anthony.perard@citrix.com" <anthony.perard@citrix.com>,
	"anthony@codemonkey.ws" <anthony@codemonkey.ws>,
	"Zhang, Yang Z" <yang.z.zhang@intel.com>,
	"Chen, Tiejun" <tiejun.chen@intel.com>
Subject: Re: [Qemu-devel] [v2][PATCH 4/8] xen, gfx passthrough: reserve 00:02.0 for INTEL IGD
Date: Mon, 19 May 2014 15:00:21 +0100	[thread overview]
Message-ID: <20140519140021.GB29907@redhat.com> (raw)
In-Reply-To: <1400507431.32155.75.camel@nilsson.home.kraxel.org>

On Mon, May 19, 2014 at 03:50:31PM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> > > 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.
> 
> libvirt does this unconditionally, because it is a good idea anyway for
> a number of reasons.  Example: create a machine with three pci devices,
> hot-unplug the second, then live-migrate to another machine.  The only
> way to create the correct config on the target machine is to explicitly
> assign slots, otherwise the third pci device ends up in the wrong slot.
> 
> Don't know how the libxl (and xl tool) work.  Maybe it does the same
> anyway.  Maybe it can handle the address assignment transparently for
> the user.

I'm not sure if libxl itself takes care of this under the hood, but the
libvirt libxl driver at least does not deal with persistent PCI address
allocation currently.

We're pulling the QEMU driver PCI address allocation code out into a shared
module, for reuse by libvirt's BHyve driver for BSD, which will make it easy
for the libvirt libxl driver to also use it if required too.


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

WARNING: multiple messages have this Message-ID (diff)
From: "Daniel P. Berrange" <berrange@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: "peter.maydell@linaro.org" <peter.maydell@linaro.org>,
	"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	"mst@redhat.com" <mst@redhat.com>,
	"stefano.stabellini@eu.citrix.com"
	<stefano.stabellini@eu.citrix.com>,
	"Kay, Allen M" <allen.m.kay@intel.com>,
	"Kelly.Zytaruk@amd.com" <Kelly.Zytaruk@amd.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"anthony.perard@citrix.com" <anthony.perard@citrix.com>,
	"anthony@codemonkey.ws" <anthony@codemonkey.ws>,
	"Zhang, Yang Z" <yang.z.zhang@intel.com>,
	"Chen, Tiejun" <tiejun.chen@intel.com>
Subject: Re: [v2][PATCH 4/8] xen, gfx passthrough: reserve 00:02.0 for INTEL IGD
Date: Mon, 19 May 2014 15:00:21 +0100	[thread overview]
Message-ID: <20140519140021.GB29907@redhat.com> (raw)
In-Reply-To: <1400507431.32155.75.camel@nilsson.home.kraxel.org>

On Mon, May 19, 2014 at 03:50:31PM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> > > 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.
> 
> libvirt does this unconditionally, because it is a good idea anyway for
> a number of reasons.  Example: create a machine with three pci devices,
> hot-unplug the second, then live-migrate to another machine.  The only
> way to create the correct config on the target machine is to explicitly
> assign slots, otherwise the third pci device ends up in the wrong slot.
> 
> Don't know how the libxl (and xl tool) work.  Maybe it does the same
> anyway.  Maybe it can handle the address assignment transparently for
> the user.

I'm not sure if libxl itself takes care of this under the hood, but the
libvirt libxl driver at least does not deal with persistent PCI address
allocation currently.

We're pulling the QEMU driver PCI address allocation code out into a shared
module, for reuse by libvirt's BHyve driver for BSD, which will make it easy
for the libvirt libxl driver to also use it if required too.


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

  reply	other threads:[~2014-05-19 14:01 UTC|newest]

Thread overview: 150+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-16 10:53 [Qemu-devel] [v2][PATCH 0/8] xen: add Intel IGD passthrough support Tiejun Chen
2014-05-16 10:53 ` Tiejun Chen
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 1/8] pci: use bitmap to manage registe/runregister pci device Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 2/8] pci: provide a way to reserve some specific devfn Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:07   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:07     ` Konrad Rzeszutek Wilk
2014-05-19  9:43     ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:43       ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 3/8] xen, gfx passthrough: basic graphics passthrough support Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:06   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:06     ` Konrad Rzeszutek Wilk
2014-05-19  9:42     ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:42       ` Chen, Tiejun
2014-05-19 13:35       ` [Qemu-devel] " Konrad Rzeszutek Wilk
2014-05-19 13:35         ` Konrad Rzeszutek Wilk
2014-05-20  9:32         ` [Qemu-devel] " Chen, Tiejun
2014-05-20  9:32           ` Chen, Tiejun
2014-05-19 12:10     ` [Qemu-devel] " Stefano Stabellini
2014-05-19 12:10       ` Stefano Stabellini
2014-05-20  5:09       ` [Qemu-devel] " Chen, Tiejun
2014-05-20  5:09         ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 4/8] xen, gfx passthrough: reserve 00:02.0 for INTEL IGD Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:08   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:08     ` Konrad Rzeszutek Wilk
2014-05-19  9:54     ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:54       ` Chen, Tiejun
2014-05-19  6:44   ` [Qemu-devel] " Gerd Hoffmann
2014-05-19  6:44     ` Gerd Hoffmann
2014-05-19  7:48     ` [Qemu-devel] [Xen-devel] " Fabio Fantoni
2014-05-19  7:48       ` Fabio Fantoni
2014-05-19  8:15       ` [Qemu-devel] " Zhang, Yang Z
2014-05-19  8:15         ` Zhang, Yang Z
2014-05-19  9:34       ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:34         ` Chen, Tiejun
2014-05-19  9:25     ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:25       ` Chen, Tiejun
2014-05-19 10:13       ` [Qemu-devel] " Michael S. Tsirkin
2014-05-19 10:13         ` Michael S. Tsirkin
2014-05-20  9:34         ` [Qemu-devel] " Chen, Tiejun
2014-05-20  9:34           ` Chen, Tiejun
2014-05-20 11:36           ` [Qemu-devel] " Michael S. Tsirkin
2014-05-20 11:36             ` Michael S. Tsirkin
2014-05-19 11:22       ` [Qemu-devel] " Gerd Hoffmann
2014-05-19 11:22         ` Gerd Hoffmann
2014-05-19 12:04         ` [Qemu-devel] " Chen, Tiejun
2014-05-19 12:04           ` Chen, Tiejun
2014-05-19 13:50           ` [Qemu-devel] " Gerd Hoffmann
2014-05-19 13:50             ` Gerd Hoffmann
2014-05-19 14:00             ` Daniel P. Berrange [this message]
2014-05-19 14:00               ` Daniel P. Berrange
2014-05-21  7:07             ` [Qemu-devel] " Chen, Tiejun
2014-05-21  7:07               ` Chen, Tiejun
2014-05-22  0:31               ` [Qemu-devel] " Chen, Tiejun
2014-05-22  0:31                 ` Chen, Tiejun
2014-05-22  5:39                 ` [Qemu-devel] " Gerd Hoffmann
2014-05-22  5:39                   ` Gerd Hoffmann
2014-05-22  6:18                   ` [Qemu-devel] " Chen, Tiejun
2014-05-22  6:18                     ` Chen, Tiejun
2014-05-22  6:44                     ` [Qemu-devel] " Gerd Hoffmann
2014-05-22  6:44                       ` Gerd Hoffmann
2014-05-22  6:49                       ` [Qemu-devel] " Michael S. Tsirkin
2014-05-22  6:49                         ` Michael S. Tsirkin
2014-05-22  7:11                       ` [Qemu-devel] " Chen, Tiejun
2014-05-22  7:11                         ` Chen, Tiejun
2014-05-22 10:50                       ` [Qemu-devel] " Chen, Tiejun
2014-05-22 10:50                         ` Chen, Tiejun
2014-05-22 11:03                         ` [Qemu-devel] " Gonglei (Arei)
2014-05-22 11:03                           ` Gonglei (Arei)
2014-05-22 11:22                         ` [Qemu-devel] " Gerd Hoffmann
2014-05-22 11:22                           ` Gerd Hoffmann
2014-05-23  1:07                           ` Chen, Tiejun
2014-05-23  1:07                             ` Chen, Tiejun
2014-05-22 11:25                         ` [Qemu-devel] " Michael S. Tsirkin
2014-05-22 11:25                           ` Michael S. Tsirkin
2014-05-22 14:20                           ` [Qemu-devel] [Xen-devel] " Igor Mammedov
2014-05-22 14:20                             ` Igor Mammedov
2014-05-23  1:18                             ` [Qemu-devel] " Chen, Tiejun
2014-05-23  1:18                               ` Chen, Tiejun
2014-05-23  7:38                               ` [Qemu-devel] " Igor Mammedov
2014-05-23  7:38                                 ` Igor Mammedov
2014-05-23 10:52                                 ` [Qemu-devel] " Anthony PERARD
2014-05-23 10:52                                   ` Anthony PERARD
2014-05-23 11:40                                   ` [Qemu-devel] " Stefano Stabellini
2014-05-23 11:40                                     ` Stefano Stabellini
2014-05-23 11:53                                     ` [Qemu-devel] " Gerd Hoffmann
2014-05-23 11:53                                       ` Gerd Hoffmann
2014-05-23 12:06                                   ` [Qemu-devel] " Igor Mammedov
2014-05-23 12:06                                     ` Igor Mammedov
2014-05-23 12:16                                   ` [Qemu-devel] " Igor Mammedov
2014-05-23 12:16                                     ` Igor Mammedov
2014-05-22  9:58                   ` [Qemu-devel] " Konrad Rzeszutek Wilk
2014-05-22  9:58                     ` Konrad Rzeszutek Wilk
2014-05-20 14:45           ` [Qemu-devel] " Anthony PERARD
2014-05-20 14:45             ` Anthony PERARD
2014-05-21  1:25             ` [Qemu-devel] " Chen, Tiejun
2014-05-21  1:25               ` Chen, Tiejun
2014-06-25  2:49         ` [Qemu-devel] " Chen, Tiejun
2014-06-25  2:49           ` Chen, Tiejun
2014-06-25 23:04           ` [Qemu-devel] " Slutz, Donald Christopher
2014-06-25 23:04             ` Slutz, Donald Christopher
2014-06-26  2:00             ` [Qemu-devel] " Chen, Tiejun
2014-06-26  2:00               ` Chen, Tiejun
2014-06-26  8:23               ` [Qemu-devel] " Chen, Tiejun
2014-06-26  8:23                 ` Chen, Tiejun
2014-06-26 16:58                 ` [Qemu-devel] " Don Slutz
2014-06-26 16:58                   ` Don Slutz
2014-06-30  9:29                   ` [Qemu-devel] " Gerd Hoffmann
2014-06-30  9:29                     ` Gerd Hoffmann
2014-06-30 10:23                     ` [Qemu-devel] " Chen, Tiejun
2014-06-30 10:23                       ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 5/8] xen, gfx passthrough: create intel isa bridge Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:11   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:11     ` Konrad Rzeszutek Wilk
2014-05-19  9:59     ` [Qemu-devel] " Chen, Tiejun
2014-05-19  9:59       ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 6/8] xen, gfx passthrough: support Intel IGD passthrough with VT-D Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:35   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:35     ` Konrad Rzeszutek Wilk
2014-05-19  0:58     ` [Qemu-devel] " Zhang, Yang Z
2014-05-19  0:58       ` Zhang, Yang Z
2014-05-19 13:34       ` [Qemu-devel] " Konrad Rzeszutek Wilk
2014-05-19 13:34         ` Konrad Rzeszutek Wilk
2014-05-20  5:13         ` [Qemu-devel] " Chen, Tiejun
2014-05-20  5:13           ` Chen, Tiejun
2014-05-20 13:39           ` [Qemu-devel] " Konrad Rzeszutek Wilk
2014-05-20 13:39             ` Konrad Rzeszutek Wilk
2014-05-19 10:02     ` [Qemu-devel] [Xen-devel] " Chen, Tiejun
2014-05-19 10:02       ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 7/8] xen, gfx passthrough: create host bridge to passthrough Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-16 14:37   ` [Qemu-devel] [Xen-devel] " Konrad Rzeszutek Wilk
2014-05-16 14:37     ` Konrad Rzeszutek Wilk
2014-05-19 10:03     ` [Qemu-devel] " Chen, Tiejun
2014-05-19 10:03       ` Chen, Tiejun
2014-05-16 10:53 ` [Qemu-devel] [v2][PATCH 8/8] xen, gfx passthrough: add opregion mapping Tiejun Chen
2014-05-16 10:53   ` Tiejun Chen
2014-05-19 11:53   ` [Qemu-devel] " Stefano Stabellini
2014-05-19 11:53     ` Stefano Stabellini
2014-05-20  9:24     ` [Qemu-devel] " Chen, Tiejun
2014-05-20  9:24       ` Chen, Tiejun
2014-05-20 10:50       ` [Qemu-devel] " Stefano Stabellini
2014-05-20 10:50         ` Stefano Stabellini
2014-05-21  0:57         ` [Qemu-devel] " Chen, Tiejun
2014-05-21  0:57           ` Chen, Tiejun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140519140021.GB29907@redhat.com \
    --to=berrange@redhat.com \
    --cc=Kelly.Zytaruk@amd.com \
    --cc=allen.m.kay@intel.com \
    --cc=anthony.perard@citrix.com \
    --cc=anthony@codemonkey.ws \
    --cc=kraxel@redhat.com \
    --cc=mst@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=tiejun.chen@intel.com \
    --cc=xen-devel@lists.xensource.com \
    --cc=yang.z.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.