On 12-Feb-18 10:00 PM, Ravi Kerur wrote:


        Let me just give you what has been tested and working/nonworking
        scenarios. Some of your questions might get answered as well.
        Test bed is very simple with 2 VF's created under IXGBE PF on
        host with one VF interface added to ovs-bridge on host and
        another VF interface given to guest. Test connectivity between
        VF's via ping.

        Host and guest -- Kernel 4.9
        Host -- Qemu 2.11.50 (tried both released 2.11 and tip of the
        git (2.11.50))
        DPDK -- 17.05.1 on host and guest
        Host and guest -- booted with GRUB intel_iommu=on (which enables
        IOMMU). Have tried with "iommu=on and intel_iommu=on" as well,
        but iommu=on is not needed when intel_iommu=on is set.

        Test-scenario-1: Host -- ixgbe_vf driver, Guest ixgbe_vf driver
        ping works
        Test-scenario-2: Host -- DPDK vfio-pci driver, Guest ixgbe_vf
        driver ping works
        Test-scenario-3: Host -- DPDK vfio-pci driver, Guest DPDK
        vfio-pci driver, DMAR errors seen on host, ping doesn't work


    OK, that makes it clearer, thanks. Does the third scenario work in
    other DPDK versions?


No. Tried 16.11 same issue on guest and works fine on host.


So now we've moved from "this worked on 16.11" to "this never worked".

It would be good to see output of rte_dump_physmem_layout() on both host and guest, and check which address triggers the DMAR error (i.e. if the physical address is present in mappings for either DPDK process).

--
Thanks,
Anatoly

Reply via email to