[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough
From: |
Tobias Geiger |
Subject: |
Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough |
Date: |
Mon, 20 Feb 2012 11:51:11 +0100 |
User-agent: |
KMail/1.13.7 (Linux/3.0.0-1-amd64; KDE/4.6.5; x86_64; ; ) |
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
- [Qemu-devel] [PATCH V7 08/11] Introduce Xen PCI Passthrough, PCI config space helpers (2/3), (continued)
- [Qemu-devel] [PATCH V7 08/11] Introduce Xen PCI Passthrough, PCI config space helpers (2/3), Anthony PERARD, 2012/02/17
- [Qemu-devel] [PATCH V7 06/11] pci.c: Add pci_check_bar_overlap, Anthony PERARD, 2012/02/17
- [Qemu-devel] [PATCH V7 11/11] xen passthrough: clean up MSI-X table handling, Anthony PERARD, 2012/02/17
- [Qemu-devel] [PATCH V7 10/11] Introduce Xen PCI Passthrough, MSI (3/3), Anthony PERARD, 2012/02/17
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough,
Tobias Geiger <=
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Anthony PERARD, 2012/02/20
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Tobias Geiger, 2012/02/20
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Anthony PERARD, 2012/02/20
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Tobias Geiger, 2012/02/20
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Anthony PERARD, 2012/02/20
- Re: [Qemu-devel] [Xen-devel] [PATCH V7 00/11] Xen PCI Passthrough, Anthony PERARD, 2012/02/22