qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Tobias Geiger <tobias.geiger@vido.info>
To: xen-devel@lists.xensource.com
Cc: Anthony PERARD <anthony.perard@citrix.com>,
	QEMU-devel <qemu-devel@nongnu.org>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough
Date: Mon, 20 Feb 2012 11:51:11 +0100	[thread overview]
Message-ID: <201202201151.12291.tobias.geiger@vido.info> (raw)
In-Reply-To: <1329498525-8454-1-git-send-email-anthony.perard@citrix.com>

Hi!

i wanted to test these patches against 
http://xenbits.xensource.com/xen-unstable.hg but it seems to check out an 
outdated version of upstream-qemu, even with "QEMU=upstream".

Where can i check out the qemu-upstream version to which these patches apply?

Thanks and Greetings
Tobias


Am Freitag, 17. Februar 2012, 18:08:34 schrieb Anthony PERARD:
> Hi all,
> 
> This patch series introduces the PCI passthrough for Xen.
> 
> First, we have HostPCIDevice that help to access one PCI device of the
> host.
> 
> Then, there is an additions in the QEMU code, 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.
> 
> There is a patch series on xen-devel (applied to xen-unstable) that add the
> support of 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:07:00.1".
> 
> 
> Change since the previous set:
>   - few fix and rebased on master
>   - remove of the power management capability, keep the minimum like if it
> is always desactivated.
>   - new patch: port of patch from the qemu-xen fork.
> 
> 
> Change v5-v6:
>   - msitraslate code have been removed.
>   - code for the power management capability is removed, but will be
> re-added for the next version of the patch series as a separate patch.
> 
>   - new patch to remove a check in pci_parse_devaddr.
>   - use pci_default_config_write, so no more hack to handle the BAR mapping
> in QEMU.
>   - improve the code in general (a bit more comprehensible).
>   - update to QOM.
> 
> 
> Change v4-v5:
>   - return -errno if there is an error in host_pci_get_*
>   - rename internal function get_value to get_hex_value (and return the
> same error value has get_resource)
> 
> Change v3-v4:
>   - host_pci_get_* can now return an error, and take an extra parameter, a
>     pointer to store the wanted value.
>   - The memory_region for the PCI BAR are handled "manualy" because calling
>     pci_default_write_config was not possible, because the XenPT handle the
>     PCIIORegion it self. This make possible to do a device_remove.
>   - Introduction of PT_ERR and PT_WARN macro to print debug and error
> messages. Also, these macro as well as PT_LOG will always print the short
> BDF of the device in the guest point of view.
>   - PT_ERR is print by default (for all error messages).
>   - Some debug/error message have been improve and should be a bit more
> useful. - hw_error have been removed from the code, and have been replaced
> by either a call to qemu_system_shudown_request() (that lead to a domain
> destroy) or a failed in the initialisation of the device.
>   - Now, every patchs should compile with no error.
> 
> Change v2-v3;
>   - in host-pci-device.c:
>     - Return more usefull error code in get_ressource().
>     - Use macro in host_pci_find_ext_cap_offset instead of raw number. But
> I still not sure if PCI_MAX_EXT_CAP is right, it's result is 480 like it
> was before, so it's maybe ok.
>   - All use of MSI stuff in two first pci passthrough patch have been
> removed and move to the last patch.
> 
> Change v1-v2:
>   - fix style issue (checkpatch.pl)
>   - set the original authors, add some missing copyright headers
>   - HostPCIDevice:
>     - introduce HostPCIIORegions (with base_addr, size, flags)
>     - save all flags from ./resource and store it in a separate field.
>     - fix endianess on write
>     - new host_pci_dev_put function
>     - use pci.c like interface host_pci_get/set_byte/word/long (instead of
>       host_pci_read/write_)
>   - compile HostPCIDevice only on linux (as well as xen_pci_passthrough)
>   - introduce apic-msidef.h file.
>   - no more run_one_timer, if a pci device is in the middle of a power
>     transition, just "return an error" in config read/write
>   - use a global var mapped_machine_irq (local to xen_pci_passthrough.c)
>   - add msitranslate and power-mgmt ad qdev property
> 
> 
> 
> 
> 
> Allen Kay (2):
>   Introduce Xen PCI Passthrough, qdevice (1/3)
>   Introduce Xen PCI Passthrough, PCI config space helpers (2/3)
> 
> Anthony PERARD (6):
>   pci_ids: Add INTEL_82599_VF id.
>   pci_regs: Fix value of PCI_EXP_TYPE_RC_EC.
>   pci_regs: Add PCI_EXP_TYPE_PCIE_BRIDGE
>   configure: Introduce --enable-xen-pci-passthrough.
>   Introduce HostPCIDevice to access a pci device on the host.
>   Introduce apic-msidef.h
> 
> Jiang Yunhong (1):
>   Introduce Xen PCI Passthrough, MSI (3/3)
> 
> Shan Haitao (1):
>   xen passthrough: clean up MSI-X table handling
> 
> Yuji Shimada (1):
>   pci.c: Add pci_check_bar_overlap
> 
>  Makefile.target                      |    6 +
>  configure                            |   25 +
>  hw/apic-msidef.h                     |   30 +
>  hw/apic.c                            |   11 +-
>  hw/host-pci-device.c                 |  278 +++++
>  hw/host-pci-device.h                 |   75 ++
>  hw/pci.c                             |   47 +
>  hw/pci.h                             |    3 +
>  hw/pci_ids.h                         |    1 +
>  hw/pci_regs.h                        |    3 +-
>  hw/xen_common.h                      |    3 +
>  hw/xen_pci_passthrough.c             |  898 ++++++++++++++++
>  hw/xen_pci_passthrough.h             |  308 ++++++
>  hw/xen_pci_passthrough_config_init.c | 1914
> ++++++++++++++++++++++++++++++++++ hw/xen_pci_passthrough_msi.c         | 
> 618 +++++++++++
>  xen-all.c                            |   12 +
>  16 files changed, 4221 insertions(+), 11 deletions(-)
>  create mode 100644 hw/apic-msidef.h
>  create mode 100644 hw/host-pci-device.c
>  create mode 100644 hw/host-pci-device.h
>  create mode 100644 hw/xen_pci_passthrough.c
>  create mode 100644 hw/xen_pci_passthrough.h
>  create mode 100644 hw/xen_pci_passthrough_config_init.c
>  create mode 100644 hw/xen_pci_passthrough_msi.c

  parent reply	other threads:[~2012-02-20 10:57 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-17 17:08 [Qemu-devel] [PATCH V7 00/11] Xen PCI Passthrough Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 01/11] pci_ids: Add INTEL_82599_VF id Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 02/11] pci_regs: Fix value of PCI_EXP_TYPE_RC_EC Anthony PERARD
2012-02-20 20:27   ` Michael S. Tsirkin
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 03/11] pci_regs: Add PCI_EXP_TYPE_PCIE_BRIDGE Anthony PERARD
2012-02-20 20:30   ` Michael S. Tsirkin
2012-02-21 16:07     ` Anthony PERARD
2012-02-23 20:20   ` Michael S. Tsirkin
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 04/11] configure: Introduce --enable-xen-pci-passthrough Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 05/11] Introduce HostPCIDevice to access a pci device on the host Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 06/11] pci.c: Add pci_check_bar_overlap Anthony PERARD
2012-02-19 13:35   ` Michael S. Tsirkin
2012-02-28 11:19     ` Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 07/11] Introduce Xen PCI Passthrough, qdevice (1/3) Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 08/11] Introduce Xen PCI Passthrough, PCI config space helpers (2/3) Anthony PERARD
2012-02-19 13:32   ` Michael S. Tsirkin
2012-02-20 20:35   ` Michael S. Tsirkin
2012-02-21 10:18     ` Stefano Stabellini
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 09/11] Introduce apic-msidef.h Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 10/11] Introduce Xen PCI Passthrough, MSI (3/3) Anthony PERARD
2012-02-17 17:08 ` [Qemu-devel] [PATCH V7 11/11] xen passthrough: clean up MSI-X table handling Anthony PERARD
2012-02-21  9:34   ` Jan Beulich
2012-02-21 16:15     ` Anthony PERARD
2012-02-20 10:51 ` Tobias Geiger [this message]
2012-02-20 11:31   ` [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough Anthony PERARD
2012-02-20 16:11     ` Tobias Geiger
2012-02-20 17:08       ` Anthony PERARD
2012-02-20 19:58         ` Tobias Geiger
2012-02-20 23:31           ` Anthony PERARD
2012-02-22 14:56             ` Anthony PERARD

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=201202201151.12291.tobias.geiger@vido.info \
    --to=tobias.geiger@vido.info \
    --cc=anthony.perard@citrix.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).