[ovs-dev] [Qestion] netdev-dpdk: dpdk vhost ports

Marcel Apfelbaum marcel at redhat.com
Tue Feb 24 15:44:59 UTC 2015


On 02/24/2015 05:13 PM, Loftus, Ciara wrote:
> Hi Marcel,
>
> On 02/23/2015 12:57 PM, Marcel Apfelbaum wrote:
>> Hi,
> I CC-ed the developers that submitted the patch.
> Thanks again,
> Marcel
>
Hi,
Thank you for responding to my mail!

>
>>
>> Regarding patch: [ovs-dev] [PATCH RFC v6 1/1] netdev-dpdk: add dpdk
>> vhost ports
>> http://openvswitch.org/pipermail/dev/2015-January/050279.html
>>
>> What are the Qemu versions supported?(At least the ones that were
>> tested)
>> (V5 of this patch was tested with QEMU versions 1.4.2 and 1.6.2)
> This patch was tested with QEMU 1.6.2 and later 2.1.0.
Thanks, I tried with QEMU 1.6.2 with no luck.

>>
>> The reason I ask is that I tried it with a Fedora 21 host with both
>> QEMU 2.1.2 and QEMU 1.6.2 and I had no luck connecting the guest to
>> the switch.
> With  QEMU 1.6.2 please make sure that you have hugepages set up and that you provide the
> "-mem-path /path/to/hugepages -mem-prealloc"
> arguments on the QEMU command line.
Used that (I read all the documentation - a pretty good one, thanks!)

>
> Secondly, please make sure that the name of the vhost port you provided to add-port matches the "ifname" parameter on the QEMU command line:
> OVS: ovs-vsctl add-port br0 ovsdpdk0 -- set Interface type=dpdkvhost
> QEMU: -netdev type=tap,id=net1,script=no,downscript=no,ifname=ovsdpdk0,vhost=on
I had this one too.

>
> Thirdly, ensure that the eventfd_link.ko module is inserted.
Checked.

>>
>> The ovsdpdk0 port always remains DOWN.
>> Any pointers will be greatly appreciated.
> Have you tested with traffic? Or are you relying on the config/state UP/DOWN to verify if the port is connected to the switch?
I did both, used ofctl show <bridge> and tried to ping between guest<->host and guest<->other host. No luck.

A little description of my setup:
I have:
  - a regular Fedora 21 host with a regular NIC connected back-to-back to:
  - a host with Fedora 21 and
    - Intel DPDK-enabled NIC
    - DPDK 1.8.0
    - Openvswitch (latest) patched with this patch and the other 2 recommended patches.
  - I set br0 ip address to something like 192.168.0.100 and I am able to ping between
    br0 and the other regular host. Both the guest and the other host have ips configured.

However, I am not able to ping between br0<->guest or regular host<->guest.

I think that my problem is on of the two:
1. I am missing a configuration step to make the guest accessible.
    - Should ovsdpdk0 port be configured with an IP? (Sorry for my lack of knowledge...)
    - When/how should ovsdpdk0 change from PORT_DOWN to PORT_UP?
    - Any other step I am missing to complete the setup?

2. My environment has some 'pieces' that do not play well together, incompatible versions or such.
    - dpdk: Should I only use dpdk-1.8.0-rc4 or latest stable works?
    - openvswith: did you check it against a specific version/commit, or latest should work?
    - kernel: does the kernel version play a role on this?
    - Is any other incompatibility possible?

Are there any logs that could help me understand what is happening:
    - ovsdpdk0 configuration
    - ovsdpdk0 connection to vhost-net
    - ...

Your help is very much appreciated,
Marcel

>>
>> Thank you in advance,
>> Marcel
>>
>>
>> _______________________________________________
>> dev mailing list
>> dev at openvswitch.org
>> http://openvswitch.org/mailman/listinfo/dev
>
> --------------------------------------------------------------
> Intel Shannon Limited
> Registered in Ireland
> Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
> Registered Number: 308263
> Business address: Dromore House, East Park, Shannon, Co. Clare
>
> This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
>




More information about the dev mailing list