On 08/05/2014 11:30 AM, Alexey Kardashevskiy wrote: > On 07/31/2014 07:34 PM, Alexey Kardashevskiy wrote: >> At the moment sPAPR PHB supports only a single 32bit window >> which is normally 1..2GB which is not enough for high performance devices. >> >> PAPR spec enables creating an additional window(s) to support 64bit >> DMA and bigger page sizes. >> >> This patchset adds DDW support for pseries. The host kernel changes are >> required. >> >> This was tested on POWER8 system which allows one additional DMA window >> which is mapped at 0x800.0000.0000.0000 and supports 16MB pages. >> Existing guests check for DDW capabilities in PHB's device tree and if it >> is present, they request for an additional window and map entire guest RAM >> using H_PUT_TCE/... hypercalls once at boot time and switch to direct DMA >> operations. >> >> TCE tables still may be big enough for guests backed with 64K pages but they >> are reasonably small for guests backed by 16MB pages. >> >> Please comment. Thanks! > > > Alexander Graf, ping!
Ping? > > > >> Alexey Kardashevskiy (10): >> qom: Make object_child_foreach safe for objects removal >> spapr_iommu: Disable in-kernel IOMMU tables for >4GB windows >> spapr_pci: Make find_phb()/find_dev() public >> spapr_iommu: Make spapr_tce_find_by_liobn() public >> linux headers update for DDW >> spapr_rtas: Add Dynamic DMA windows (DDW) RTAS calls support >> spapr: Add "ddw" machine option >> spapr_pci: Enable DDW >> spapr_pci_vfio: Enable DDW >> vfio: Enable DDW ioctls to VFIO IOMMU driver >> >> hw/misc/vfio.c | 4 + >> hw/ppc/Makefile.objs | 3 + >> hw/ppc/spapr.c | 15 +++ >> hw/ppc/spapr_iommu.c | 8 +- >> hw/ppc/spapr_pci.c | 87 +++++++++++-- >> hw/ppc/spapr_pci_vfio.c | 75 +++++++++++ >> hw/ppc/spapr_rtas_ddw.c | 296 >> ++++++++++++++++++++++++++++++++++++++++++++ >> include/hw/pci-host/spapr.h | 27 ++++ >> include/hw/ppc/spapr.h | 7 +- >> linux-headers/linux/vfio.h | 37 +++++- >> qom/object.c | 4 +- >> trace-events | 4 + >> vl.c | 4 + >> 13 files changed, 552 insertions(+), 19 deletions(-) >> create mode 100644 hw/ppc/spapr_rtas_ddw.c >> > > -- Alexey