> -----Original Message----- > From: Daniele Di Proietto [mailto:diproiet...@vmware.com] > Sent: Thursday, May 21, 2015 4:23 PM > To: Traynor, Kevin > Cc: discuss > Subject: Re: [ovs-discuss] For help about ssh between vms through ovs-dkdp > > > > On 21/05/2015 15:48, "Traynor, Kevin" <kevin.tray...@intel.com> wrote: > > > > >> -----Original Message----- > >> From: Daniele Di Proietto [mailto:diproiet...@vmware.com] > >> Sent: Wednesday, May 20, 2015 4:12 PM > >> To: Traynor, Kevin > >> Cc: ???0280; discuss; ??0310 > >> Subject: Re: [ovs-discuss] For help about ssh between vms through > >>ovs-dkdp > >> > >> > >> On 20/05/2015 15:21, "Traynor, Kevin" <kevin.tray...@intel.com> wrote: > >> > >> > > >> > > >> >> -----Original Message----- > >> > > >> >> From: Daniele Di Proietto [mailto:diproiet...@vmware.com] > >> > > >> >> Sent: Wednesday, May 20, 2015 1:47 PM > >> > > >> >> To: 钢锁0310 > >> > > >> >> Cc: 通天晓0280; discuss; Traynor, Kevin > >> > > >> >> Subject: Re: [ovs-discuss] For help about ssh between vms through > >> >>ovs-dkdp > >> > > >> >> > >> > > >> >> This might be related to offloading features. > >> > > >> >> > >> > > >> >> Could you try again with this qemu "-device" option and let us know? > >> > > >> >> -device > >> > > >> >> > >> > >>>>virtio-net-pci,netdev=net1,csum=off,gso=off,guest_tso4=off,guest_tso6=o > >>>>ff > >> >>,g > >> > > >> >> uest_ecn=off > >> > > >> > > >> > > >> >I checked this previously and the DPDK vhost lib will report those > >> >features > >> > > >> >as not available during negotiation so you should be ok with not > >> >specifying > >> > > >> >them explicitly in the qemu cmd line. I haven't tested with qemu 2.3. > >> > > >> > > >> > > >> >> > >> > > >> >> > >> > > >> >> Kevin, do you this we should mention this in INSTALL.DPDk.md? > >> > > >> > > >> > > >> >I had changed the original patch to make it optional in 3a based on > >> >feedback > >> > > >> >from Michael Tsirkin and testing. So unless we find an issue, I'd > >>prefer > >> >to > >> > > >> >leave optional. > >> > > >> > >>>https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_openvswi > >>>tc > >> > >>>h_ovs_blob_master_INSTALL.DPDK.md-23dpdk-2Dvhost-2Dvm-2Dconfiguration&d= > >>>Aw > >> > >>>IGoQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=SmB5nZacmXNq0gKCC1s > >>>_C > >> > >>>w5yUNjxgD4v5kJqZ2uWLlE&m=iM-aCjDqF2zfP98Zeafj9Z78WnCYvkzPSyZeV1kVGWg&s=S > >>>Om > >> >_egKoAfzUwWioueTrQ9W2sa_WSUwKC74LO5SNvWs&e= > >> > > >> > >> If I don't add the extra options, my guests (Debian wheezy kernel 3.2 > >>and > >> Ubuntu 14.04 kernel 3.13, running on QEMU 2.1.3) see these features > >> > >> # ethtool -k eth0 > >> > >> Features for eth0: > >> rx-checksumming: off > >> [fixed] > >> tx-checksumming: on > >> tx-checksum-ipv4: off [fixed] > >> tx-checksum-unneeded: off [fixed] > >> tx-checksum-ip-generic: on > >> tx-checksum-ipv6: off [fixed] > >> tx-checksum-fcoe-crc: off [fixed] > >> tx-checksum-sctp: off [fixed] > >> scatter-gather: on > >> tx-scatter-gather: on > >> tx-scatter-gather-fraglist: on > >> > >>tcp-segmentation-offload: > >> on > >> tx-tcp-segmentation: on > >> tx-tcp-ecn-segmentation: on > >> tx-tcp6-segmentation: on > >> > >>udp-fragmentation-offload: > >> on > >> > >> generic-segmentation-offload: on > >> > >>generic-receive-offload: on > >> large-receive-offload: > >>off > >> [fixed] > >> [...] > >> > >> > >> Pings work, but everything else (e.g. DNS lookups) doesn't. > >> To fix the setup I have either to add the extra options or to disable > >>the > >> offloads (inside the guest) with > >> > >> ethtool -K eth0 tx off > > > >I'm seeing that too. I can see that the dpdk vhost is reporting the > >correct > >features it supports: > >VHOST_CONFIG: (0) Device configuration started > >vhost: get_features() returning: pu=0x0000000000068000 > > > >where the bits represent > >#define VIRTIO_NET_F_MRG_RXBUF 0x08000 /* Host can merge receive > >buffers. */ > >#define VIRTIO_NET_F_CTRL_VQ 0x20000 /* Control channel available */ > >#define VIRTIO_NET_F_CTRL_RX 0x40000 /* Control channel RX mode > >support */ > > > >and then the negotiation appears to complete correctly when the dpdk vhost > >set_features() is called: > > > >vhost: set_features called: pu=0x0000000000008000 > >2015-05-21T14:08:56Z|00001|dpdk(cuse_thread2)|INFO|vHost Device > >'dpdkvhost0' (0) has been added > > > >but it looks like the negotiated features are not being reported or used? > ># ethtool -k eth1 > >Offload parameters for eth1: > >rx-checksumming: off > >tx-checksumming: on > >scatter-gather: on > >tcp-segmentation-offload: on > >udp-fragmentation-offload: on > >generic-segmentation-offload: on > >generic-receive-offload: on > >large-receive-offload: off > >rx-vlan-offload: off > >tx-vlan-offload: off > >ntuple-filters: off > >receive-hashing: off > > > >Previously when I had tested, I had checked the negotiation but went on to > >run a dpdk app in the guest and didn't see this issue. So, I think it may > >need to go back into the docs...let me know what you think and I can > >adjust. > > Thanks for confirming that Kevin, > > It appears that qemu only negotiates offloadings with a vhost-user peer. > Looking at qemu(2.3.0) hw/net/vhost_net.c:110 it seems that > `vhost_net_get_features()` will consider disabling offloadings only if > dealing with a `NET_CLIENT_OPTIONS_KIND_VHOST_USER` peer (since vhost-cuse > "emulates" a kernel vhost, our devices will appear as > `NET_CLIENT_OPTIONS_KIND_TAP`). > > I don't know why qemu behaves like this (I'm definitely not a QEMU expert), > but I'm sure it has its good reasons. > > Unless you want to dig further I suggest we add the extra QEMU options to > INSTALL.DPDK.md. Vhost-user shouldn't have this problem. > > What do you think? > > Daniele
Yeah, I think we should add it. I'm not sure what the pipeline is like, but maybe we could hold off until after vhost-user because it'll force another rebase for INSTALL.DPDK and we can cover vhost-user qemu params then also. If you want to put it in straight away I'm ok with that too. _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss