Hi,

I would like to bring up my kvm guest with dpdk vhost interface. Before I run qemu, I have added dpdkvhost interface in ovs bridge, so as to attach with qemu later (wrt INSTALL.DPDK.md).

Once I created dpdkvhost interface, I noticed that dpdkvhost0 was in LINK_DOWN (I think it is
expected as the device does not exist yet).

ovs-master# ovs-vsctl add-port br0 dpdkvhost0 -- set Interface dpdkvhost0 type=dpdkvhost

ovs-master# ovs-ofctl show br0

OFPT_FEATURES_REPLY (xid=0x2): dpid:000090e2ba1524ac
n_tables:254, n_buffers:256
capabilities: FLOW_STATS TABLE_STATS PORT_STATS QUEUE_STATS ARP_MATCH_IP
actions: output enqueue set_vlan_vid set_vlan_pcp strip_vlan mod_dl_src mod_dl_dst mod_nw_src mod_nw_dst mod_nw_tos mod_tp_src mod_tp_dst
 1(dpdk0): addr:90:e2:ba:15:24:ac
     config:     0
     state:      0
     current:    10GB-FD
     supported:  10MB-HD 100MB-HD 1GB-HD COPPER AUTO_NEG AUTO_PAUSE
     speed: 10000 Mbps now, 1000 Mbps max
 2(dpdkvhost0): addr:00:00:00:00:00:00
     config:     PORT_DOWN
     state:      LINK_DOWN                 <<<<<<
     speed: 0 Mbps now, 0 Mbps max
 LOCAL(br0): addr:90:e2:ba:15:24:ac
     config:     0
     state:      0
     current:    10MB-FD COPPER
     speed: 10 Mbps now, 0 Mbps max

From ovs-vswitchd.log (with debug info):

2015-06-02T14:49:38.149Z|00464|bridge|INFO|bridge br0: added interface dpdkvhost0 on port 2 2015-06-02T14:49:38.149Z|00465|netlink_socket|DBG|nl_sock_transact_multiple__ (Success): nl(len:52, type=37(family-defined), flags=1[REQUEST], seq=1a, pid=4294962434 2015-06-02T14:49:38.149Z|00466|netlink_socket|DBG|nl_sock_recv__ (Success): nl(len:72, type=2(error), flags=0, seq=1a, pid=4294962434 error(-2(No such file or directory), in-reply-to(nl(len:52, type=37(family-defined), flags=1[REQUEST], seq=1a, pid=4294962434)) 2015-06-02T14:49:38.149Z|00467|netlink_socket|DBG|received NAK error=0 (No such file or directory)

Then I brought up qemu kvm, but still the state of dpdkvhost0 remains same. Networking params I used in qemu are:

-netdev tap,id=hostnet2,script=no,downscript=no,ifname=dpdkvhost0,vhost=on -device virtio-net-pci,netdev=hostnet2,csum=off,gso=off,guest_tso4=off,guest_tso6=off,guest_ecn=off,id=net2,mac=52:54:00:a3:a3:5d,ioeventfd=on -object memory-backend-file,id=mem,size=4096M,mem-path=/dev/hugepages,share=on -numa node,memdev=mem -mem-prealloc

Am I missing something here ?

dpdk0 port is Intel 82599 10Gbps NIC bound on igb_uio driver. VM could recieve arp req from remote system (on dpdk0 port), but VM's arp response does not seem to cross ovs. I did not see any arp response reportedly logged by vswitchd even with debug info turned on, or may be that ovs is dropping them internally ?. Or, Should dpdkvhost0 be internal port (tap) here for ovs to handle arp response from VM ?

from ovs-ofctl dump-flows:
NXST_FLOW reply (xid=0x4):
cookie=0x0, duration=47.090s, table=0, n_packets=59, n_bytes=3741, idle_age=1, in_port=1 actions=output:2 cookie=0x0, duration=42.129s, table=0, n_packets=0, n_bytes=0, idle_age=42, in_port=2 actions=output:1

This is blocking the connection to get established with VM (from remote system talking through dpdk0).

My env info:
Ubuntu 14.10
ovs-vsctl (Open vSwitch) 2.3.90
Compiled May 19 2015 04:27:58
DB Schema 7.12.1
dpdk-2.0.0

Any help/pointer to further diagnose is greatly appreciated.

--
Regards,
Gowrishankar M

_______________________________________________
discuss mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to