qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Alex Williamson <alex.williamson@redhat.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Anthony Perard <anthony.perard@citrix.com>,
	Xen Devel <xen-devel@lists.xensource.com>,
	Avi Kivity <avi@redhat.com>, QEMU-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [Xen-devel] [PATCH RFC V1 00/11] Xen PCI Passthrough
Date: Tue, 04 Oct 2011 10:33:47 -0600	[thread overview]
Message-ID: <1317746028.2552.191.camel@bling.home> (raw)
In-Reply-To: <alpine.DEB.2.00.1110041603080.3519@kaball-desktop>

On Tue, 2011-10-04 at 16:05 +0100, Stefano Stabellini wrote:
> On Tue, 4 Oct 2011, Anthony Liguori wrote:
> > On 10/04/2011 09:58 AM, Avi Kivity wrote:
> > > On 10/04/2011 04:51 PM, Anthony PERARD wrote:
> > >> Hi all,
> > >>
> > >> This patch series introduce the PCI passthrough for Xen.
> > >>
> > >> First, we have HostPCIDevice that help to access one PCI device of the host.
> > >>
> > >> Then, there are several additions in the QEMU code. One is qemu_run_one_timer
> > >> to run a specific timer. It is used by PCI passthrough to run a timer about
> > >> power management. Another is pci_check_bar_overlap.
> > >>
> > >> There are also several change in pci_ids and pci_regs.
> > >>
> > >> Last part, but not least, the PCI passthrough device himself. Cut in 3 parts
> > >> (or file), there is one to take care of the initialisation of a passthrough
> > >> device. The second one handle everything about the config address space, there
> > >> are specifics functions for every config register. The third one is to handle
> > >> MSI.
> > >>
> > >> I'm still working on setting a PCI passthrough device through QMP from libxl
> > >> (xen tool stack). It is just a call to device_add, with the driver parametter
> > >> hostaddr="0000:00:1b.0".
> > >>
> > >> There is some minor things missing:
> > >> - copyright header
> > >> - PCI IO space multiplexer
> > >>
> > >>
> > >
> > > We also have pci passthrough in qemu-kvm (I think based on the same Neocleus
> > > code). Rather than having two pci assignment implementations, I think we should
> > > have just one, with the differences (programming the hypervisor) abstracted at
> > > that level.
> > 
> > I agree in principle but how close is qemu-kvm pci passthrough to a mergable 
> > state?  Would it make sense to merge the Xen code first and then abstract it?
> 
> I think it should be fairly easy to abstract the current xen code: just
> a matter of providing memory, ioport and interrupt mapping functions.

I thought we were potentially looking at vfio as a convergence point.
I'm still a bit off from having a vfio re-write ready to submit, but is
this still a possibility?  Thanks,

Alex

  reply	other threads:[~2011-10-04 16:34 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-04 14:51 [Qemu-devel] [PATCH RFC V1 00/11] Xen PCI Passthrough Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 01/11] Introduce HostPCIDevice to access a pci device on the host Anthony PERARD
2011-10-04 18:21   ` Jan Kiszka
2011-10-12 16:56     ` Anthony PERARD
2011-10-04 18:36   ` Stefano Stabellini
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 02/11] qemu-timer: Introduce qemu_run_one_timer Anthony PERARD
2011-10-04 17:27   ` Jan Kiszka
2011-10-04 17:52     ` Stefano Stabellini
2011-10-04 18:20     ` Anthony Liguori
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 03/11] pci_ids: Add INTEL_82599_VF id Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 04/11] pci_regs: Fix value of PCI_EXP_TYPE_RC_EC Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 05/11] pci_regs: Add PCI_EXP_TYPE_PCIE_BRIDGE Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 06/11] pci.c: Add pci_check_bar_overlap Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 07/11] host-pci-device: Add host_pci_find_ext_cap_offset Anthony PERARD
2011-10-05 11:07   ` Stefano Stabellini
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 08/11] Introduce Xen PCI Passthrough, qdevice (1/3) Anthony PERARD
2011-10-05 11:51   ` Stefano Stabellini
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 09/11] Introduce Xen PCI Passthrough, PCI config space helpers (2/3) Anthony PERARD
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 10/11] Introduce Xen PCI Passthrough, MSI (3/3) Anthony PERARD
2011-10-05 11:51   ` Stefano Stabellini
2011-10-04 14:51 ` [Qemu-devel] [PATCH RFC V1 11/11] config/make: Introduce --enable-xen-pci-passthrough, built it Anthony PERARD
2011-10-05 11:55   ` Stefano Stabellini
2011-10-04 14:58 ` [Qemu-devel] [Xen-devel] [PATCH RFC V1 00/11] Xen PCI Passthrough Avi Kivity
2011-10-04 15:01   ` Anthony Liguori
2011-10-04 15:05     ` Stefano Stabellini
2011-10-04 16:33       ` Alex Williamson [this message]
2011-10-04 16:56         ` Stefano Stabellini
2011-10-04 17:01         ` Avi Kivity
2011-10-04 17:41           ` Jan Kiszka
2011-10-04 17:03     ` Avi Kivity
2011-10-04 18:19       ` Stefano Stabellini
2011-10-04 18:24         ` Avi Kivity
2011-10-04 17:21     ` Jan Kiszka

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=1317746028.2552.191.camel@bling.home \
    --to=alex.williamson@redhat.com \
    --cc=anthony.perard@citrix.com \
    --cc=avi@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xensource.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).