[ovs-dev] How about give a simplify kernel version OVS used in Docker network?
Hi all, When I'm using Docker network, I choose linux bridge, as OVS will take high CPU cost. I think most user will encounter this problem. But also I want to use openflow and SDN. So how about give a simplify kernel version OVS used in Docker network ? And why OVS take high CPU cost? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] Bug in OVS2.8.0+DPDK17.05+Intel_82599_IXGBE sriov?
I have test dpdk testpmd, it is OK in the same enviroment. Why ovs-dpdk could not work? I think that must be some bug in ovs? 2018-05-18 11:42 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm using OVS2.8.0+DPDK17.05+Intel_82599_IXGBE for test, the vf driver is > ixgbevf-4.0.3. > > I use sriov follow like this: > echo 1 > /sys/bus/pci/devices/:01:00.0/max_vfs > > Then test l3fwd-vf demo, it is OK. > > Then test OVS2.8.0, and assign pf for ovs like this: > ovs-vsctl add-port br_t dpdk-p0 \ >-- set Interface dpdk-p0 type=dpdk options:dpdk-devargs=:01:00.0 > > Then I want to link up vf in linux driver, but report error > # sudo ifconfig em1_0 up > SIOCSIFFLAGS: Network is down > > And log shows this: > kernel: ixgbevf :01:10.0: PF still in reset state. Is the PF > interface up? > > And of course dpdk-p0 could NOT work. > > But I found if I close sriov, dpdk-p0 could work. > > > So is this means sriov could not work in OVS2.8.0+DPDK17.05+Intel_82599_IXGBE? > Who have ever run success? Thank you~ > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Bug in OVS2.8.0+DPDK17.05+Intel_82599_IXGBE sriov?
Hi all, I'm using OVS2.8.0+DPDK17.05+Intel_82599_IXGBE for test, the vf driver is ixgbevf-4.0.3. I use sriov follow like this: echo 1 > /sys/bus/pci/devices/:01:00.0/max_vfs Then test l3fwd-vf demo, it is OK. Then test OVS2.8.0, and assign pf for ovs like this: ovs-vsctl add-port br_t dpdk-p0 \ -- set Interface dpdk-p0 type=dpdk options:dpdk-devargs=:01:00.0 Then I want to link up vf in linux driver, but report error # sudo ifconfig em1_0 up SIOCSIFFLAGS: Network is down And log shows this: kernel: ixgbevf :01:10.0: PF still in reset state. Is the PF interface up? And of course dpdk-p0 could NOT work. But I found if I close sriov, dpdk-p0 could work. So is this means sriov could not work in OVS2.8.0+DPDK17.05+Intel_82599_IXGBE? Who have ever run success? Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [dpdk-dev] How to dump DPDK log?
Oh, it should be user1,8 in dpdk-17.05 OMG 2018-05-17 10:26 GMT+08:00 Sam <batmanu...@gmail.com>: > How to set this param... > > I use this, but report me bug: > > sudo /usr/local/bin/ovs-vsctl --no-wait set Open_vSwitch . > other_config:dpdk-extra="--log-level=user1,debug -c 0x40004 -n 4 > --socket-mem 1024 -w :01:00.0 -w :01:00.1" > > Bug: > > 2018-05-17T02:23:21.878Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd > --log-level=user1,debug -c 0x40004 -n 4 --socket-mem 1024 -w :01:00.0 > -w :01:00.1 > 2018-05-17T02:23:21.878Z|00011|dpdk|ERR|EAL: invalid parameters for > --log-level > 2018-05-17T02:23:21.879Z|00012|dpdk|INFO|EAL: Detected 32 lcore(s) > 2018-05-17T02:23:21.879Z|00013|dpdk|ERR|EAL: invalid parameters for > --log-level > > 2018-05-17T02:23:04.374Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd > --log-level="user1,debug" -c 0x40004 -n 4 --socket-mem 1024 -w :01:00.0 > -w :01:00.1 > 2018-05-17T02:23:04.374Z|00011|dpdk|ERR|EAL: invalid parameters for > --log-level > 2018-05-17T02:23:04.375Z|00012|dpdk|INFO|EAL: Detected 32 lcore(s) > 2018-05-17T02:23:04.375Z|00013|dpdk|ERR|EAL: invalid parameters for > --log-level > > 2018-05-16 21:29 GMT+08:00 Ferruh Yigit <ferruh.yi...@intel.com>: > >> On 5/16/2018 9:30 AM, Sam wrote: >> > I want DPDK VHOST module DEBUG level log >> > >> > 2018-05-16 16:27 GMT+08:00 Sam <batmanu...@gmail.com>: >> > >> >> Hi all, >> >> >> >> I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log >> >> like vhost module. >> >> >> >> How can I dump DPDK log into files? Thank you~ >> >> >> >> (Unfortunately) vhost module doesn't register its log type but uses USER1 >> log >> type [1]. >> >> Need to set user1 log type to debug, following eal parameter should work: >> --log-level="user1,debug" >> >> Same can be done with logging related APIs by application >> >> >> [1] >> https://dpdk.org/browse/dpdk/tree/lib/librte_vhost/vhost.h?h >> =v18.05-rc4#n351 >> > > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [dpdk-dev] How to dump DPDK log?
How to set this param... I use this, but report me bug: sudo /usr/local/bin/ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-extra="--log-level=user1,debug -c 0x40004 -n 4 --socket-mem 1024 -w :01:00.0 -w :01:00.1" Bug: 2018-05-17T02:23:21.878Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd --log-level=user1,debug -c 0x40004 -n 4 --socket-mem 1024 -w :01:00.0 -w :01:00.1 2018-05-17T02:23:21.878Z|00011|dpdk|ERR|EAL: invalid parameters for --log-level 2018-05-17T02:23:21.879Z|00012|dpdk|INFO|EAL: Detected 32 lcore(s) 2018-05-17T02:23:21.879Z|00013|dpdk|ERR|EAL: invalid parameters for --log-level 2018-05-17T02:23:04.374Z|00010|dpdk|INFO|EAL ARGS: ovs-vswitchd --log-level="user1,debug" -c 0x40004 -n 4 --socket-mem 1024 -w :01:00.0 -w :01:00.1 2018-05-17T02:23:04.374Z|00011|dpdk|ERR|EAL: invalid parameters for --log-level 2018-05-17T02:23:04.375Z|00012|dpdk|INFO|EAL: Detected 32 lcore(s) 2018-05-17T02:23:04.375Z|00013|dpdk|ERR|EAL: invalid parameters for --log-level 2018-05-16 21:29 GMT+08:00 Ferruh Yigit <ferruh.yi...@intel.com>: > On 5/16/2018 9:30 AM, Sam wrote: > > I want DPDK VHOST module DEBUG level log > > > > 2018-05-16 16:27 GMT+08:00 Sam <batmanu...@gmail.com>: > > > >> Hi all, > >> > >> I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log > >> like vhost module. > >> > >> How can I dump DPDK log into files? Thank you~ > >> > > (Unfortunately) vhost module doesn't register its log type but uses USER1 > log > type [1]. > > Need to set user1 log type to debug, following eal parameter should work: > --log-level="user1,debug" > > Same can be done with logging related APIs by application > > > [1] > https://dpdk.org/browse/dpdk/tree/lib/librte_vhost/vhost.h? > h=v18.05-rc4#n351 > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] How to dump DPDK log?
But I don't got any log from DPDK, ether INFO or DEBUG, I use ovs2.8.0 like this [gangyewei@yf-mos-test-net07 gyw_ovs]$ git diff [gangyewei@yf-mos-test-net07 gyw_ovs]$ git branch * (detached from v2.8.0) I use dpdk-17.05, and enable debugging like the mail defore [gangyewei@yf-mos-test-net07 gyw_dpdk]$ git branch * (detached from v17.05-rc1) I set log level like you said: [root@yf-mos-test-net07 vms]# sudo /usr/local/bin/ovs-appctl vlog/set file:netdev_dpdk:dbg [root@yf-mos-test-net07 vms]# sudo /usr/local/bin/ovs-appctl vlog/set file:dpdk:dbg [root@yf-mos-test-net07 vms]# sudo /usr/local/bin/ovs-appctl vlog/list | grep dpdk dpdk OFFERRDBG netdev_dpdkOFFERRDBG But I can't get DPDK log: tailf /usr/local/var/log/openvswitch/ovs-vswitchd.log BTW, I use this path to dump dpdk log before, this way could also NOT work FILE *fp = fopen("/usr/local/var/log/openvswitch/dpdk.log", "a+b"); if (fp) { rte_openlog_stream(fp); } BTW, I use gdb to debug ovs-vswitchd, and I set break point in rte_log(), then I add port or something, but I found I can't step into this function !!! I don't know if there are any one who dump DPDK log in ovs2.8.0+dpdk17.05.1 2018-05-16 20:17 GMT+08:00 Eelco Chaudron <echau...@redhat.com>: > Yes that should do it, once done don't forget to rebuild both DPDK and OVS. > > Cant remember from the top of my head which DPDK debug to enable, but the > following will do it for sure: > >ovs-appctl vlog/set file:dpdk:dbg > > >ovs-appctl vlog/set file:netdev_dpdk:dbg > > //Eelco > > > On 16/05/18 14:11, Sam wrote: > > Is this to enable debug log in DPDK? > > diff --git a/config/common_base b/config/common_base > index 5f2ad94..ecbfb3f 100644 > --- a/config/common_base > +++ b/config/common_base > @@ -93,8 +93,8 @@ CONFIG_RTE_MAX_NUMA_NODES=8 > CONFIG_RTE_MAX_MEMSEG=256 > CONFIG_RTE_MAX_MEMZONE=2560 > CONFIG_RTE_MAX_TAILQ=32 > -CONFIG_RTE_LOG_LEVEL=RTE_LOG_INFO > -CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO > +CONFIG_RTE_LOG_LEVEL=RTE_LOG_DEBUG > +CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_DEBUG > CONFIG_RTE_LOG_HISTORY=256 > CONFIG_RTE_LIBEAL_USE_HPET=n > CONFIG_RTE_EAL_ALLOW_INV_SOCKET_ID=n > @@ -651,7 +651,7 @@ CONFIG_RTE_LIBRTE_KNI=n > CONFIG_RTE_LIBRTE_PMD_KNI=n > CONFIG_RTE_KNI_KMOD=n > CONFIG_RTE_KNI_KMOD_ETHTOOL=n > -CONFIG_RTE_KNI_PREEMPT_DEFAULT=y > +CONFIG_RTE_KNI_PREEMPT_DEFAULT=n > > # > # Compile the pdump library > @@ -661,9 +661,9 @@ CONFIG_RTE_LIBRTE_PDUMP=y > # > # Compile vhost user library > # > -CONFIG_RTE_LIBRTE_VHOST=n > +CONFIG_RTE_LIBRTE_VHOST=y > CONFIG_RTE_LIBRTE_VHOST_NUMA=n > -CONFIG_RTE_LIBRTE_VHOST_DEBUG=n > +CONFIG_RTE_LIBRTE_VHOST_DEBUG=y > > 2018-05-16 20:04 GMT+08:00 Eelco Chaudron <echau...@redhat.com>: > >> On 16/05/18 10:30, Sam wrote: >> >>> I want DPDK VHOST module DEBUG level log >>> >> First make sure you build DPDK with debug logging enabled, than you can >> set the debug level using appctl. >> >> ovs-appctl vlog/list | grep dpdk >> ovs-appctl vlog/set file:dpdk:dbg >> >> Logs should be in the ovs-vswitchd.log. >> >> //Eelco >> >> 2018-05-16 16:27 GMT+08:00 Sam <batmanu...@gmail.com>: >>> >>> Hi all, >>>> >>>> I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log >>>> like vhost module. >>>> >>>> How can I dump DPDK log into files? Thank you~ >>>> >>>> ___ >>> dev mailing list >>> d...@openvswitch.org >>> https://mail.openvswitch.org/mailman/listinfo/ovs-dev >>> >> >> >> ___ >> dev mailing list >> d...@openvswitch.org >> https://mail.openvswitch.org/mailman/listinfo/ovs-dev >> > > > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] How to dump DPDK log?
Is this to enable debug log in DPDK? diff --git a/config/common_base b/config/common_base index 5f2ad94..ecbfb3f 100644 --- a/config/common_base +++ b/config/common_base @@ -93,8 +93,8 @@ CONFIG_RTE_MAX_NUMA_NODES=8 CONFIG_RTE_MAX_MEMSEG=256 CONFIG_RTE_MAX_MEMZONE=2560 CONFIG_RTE_MAX_TAILQ=32 -CONFIG_RTE_LOG_LEVEL=RTE_LOG_INFO -CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_INFO +CONFIG_RTE_LOG_LEVEL=RTE_LOG_DEBUG +CONFIG_RTE_LOG_DP_LEVEL=RTE_LOG_DEBUG CONFIG_RTE_LOG_HISTORY=256 CONFIG_RTE_LIBEAL_USE_HPET=n CONFIG_RTE_EAL_ALLOW_INV_SOCKET_ID=n @@ -651,7 +651,7 @@ CONFIG_RTE_LIBRTE_KNI=n CONFIG_RTE_LIBRTE_PMD_KNI=n CONFIG_RTE_KNI_KMOD=n CONFIG_RTE_KNI_KMOD_ETHTOOL=n -CONFIG_RTE_KNI_PREEMPT_DEFAULT=y +CONFIG_RTE_KNI_PREEMPT_DEFAULT=n # # Compile the pdump library @@ -661,9 +661,9 @@ CONFIG_RTE_LIBRTE_PDUMP=y # # Compile vhost user library # -CONFIG_RTE_LIBRTE_VHOST=n +CONFIG_RTE_LIBRTE_VHOST=y CONFIG_RTE_LIBRTE_VHOST_NUMA=n -CONFIG_RTE_LIBRTE_VHOST_DEBUG=n +CONFIG_RTE_LIBRTE_VHOST_DEBUG=y 2018-05-16 20:04 GMT+08:00 Eelco Chaudron <echau...@redhat.com>: > On 16/05/18 10:30, Sam wrote: > >> I want DPDK VHOST module DEBUG level log >> > First make sure you build DPDK with debug logging enabled, than you can > set the debug level using appctl. > > ovs-appctl vlog/list | grep dpdk > ovs-appctl vlog/set file:dpdk:dbg > > Logs should be in the ovs-vswitchd.log. > > //Eelco > > 2018-05-16 16:27 GMT+08:00 Sam <batmanu...@gmail.com>: >> >> Hi all, >>> >>> I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log >>> like vhost module. >>> >>> How can I dump DPDK log into files? Thank you~ >>> >>> ___ >> dev mailing list >> d...@openvswitch.org >> https://mail.openvswitch.org/mailman/listinfo/ovs-dev >> > > > ___ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] How to dump DPDK log?
I want DPDK VHOST module DEBUG level log 2018-05-16 16:27 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log > like vhost module. > > How can I dump DPDK log into files? Thank you~ > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] How to dump DPDK log?
Hi all, I'm debugging OVS2.9.0 and DPDK18.02, I found I could not dump DPDK log like vhost module. How can I dump DPDK log into files? Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] kernel crash bug caused by ixgbevf kernel module of centos-3.10.0-229.20.1.el7
I found a bug about ixgbevf kernel module in centos-3.10.0-229.20.1.el7. And this bug is also in 3.10.0-514.10.2.el7. How to produce this bug: use SRIOV first, then add lots of network traffic on vf port, and then ifdow/ifup vf port, after many times, this bug happens. BUG: [308026.586026] ixgbevf :01:10.0: NIC Link is Down [308026.586037] ixgbevf :01:10.1: NIC Link is Down [308026.683724] bonding: bond1: link status definitely down for interface enp1s16, disabling it [308026.683728] bonding: bond1: now running without any active interface ! [308026.683729] bonding: bond1: link status definitely down for interface enp1s16f1, disabling it [308028.266060] bonding: bond1: Removing slave enp1s16. [308028.266135] bonding: bond1: Warning: the permanent HWaddr of enp1s16 - 4e:cd:a6:59:26:2c - is still in use by bond1. Set the HWaddr of enp1s16 to a different address to avoid conflicts. [308028.266139] bonding: bond1: releasing active interface enp1s16 [308028.359872] BUG: unable to handle kernel NULL pointer dereference at 0008 [308028.361319] IP: [] ixgbevf_alloc_rx_buffers+0x60/0x160 [ixgbevf] [308028.362049] PGD 0 [308028.362777] Oops: [#1] SMP [308028.363481] Modules linked in: ixgbevf(OF) igb_uio(OF) iptable_mangle iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack iptable_filter nbd(OF) vhost_net macvtap macvlan udp_diag unix_diag af_packet_diag netlink_diag tun tcp_diag inet_diag uio bonding ext4 mbcache jbd2 intel_powerclamp coretemp kvm_intel kvm crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel mgag200 aesni_intel iTCO_wdt lrw dcdbas gf128mul syscopyarea sysfillrect iTCO_vendor_support glue_helper sysimgblt ablk_helper ttm cryptd ipmi_devintf igb ixgbe drm_kms_helper drm i2c_algo_bit ptp i2c_core ipmi_si pps_core sg mdio ipmi_msghandler dca sb_edac mei_me mei shpchp lpc_ich pcspkr mfd_core edac_core wmi acpi_power_meter acpi_pad ip_tables xfs libcrc32c sd_mod crc_t10dif crct10dif_common ahci libahci [308028.368487] libata megaraid_sas [last unloaded: ixgbevf] [308028.369345] CPU: 0 PID: 21971 Comm: kworker/0:1 Tainted: GF W O-- 3.10.0-229.el7.x86_64 #1 [308028.370226] Hardware name: Dell Inc. PowerEdge R720/068CDY, BIOS 2.5.2 01/28/2015 [308028.371132] Workqueue: events ixgbevf_service_task [ixgbevf] [308028.372038] task: 88022b0dad80 ti: 88010905c000 task.ti: 88010905c000 [308028.372965] RIP: 0010:[] [] ixgbevf_alloc_rx_buffers+0x60/0x160 [ixgbevf] [308028.373949] RSP: 0018:88010905fd10 EFLAGS: 00010287 [308028.374900] RAX: 0200 RBX: RCX: [308028.375895] RDX: RSI: 01ff RDI: 8800b82061c0 [308028.376841] RBP: 88010905fd48 R08: 0282 R09: 0001 [308028.377780] R10: 0004 R11: 0005 R12: [308028.378702] R13: fe00 R14: 01ff R15: 8800b82061c0 [308028.379628] FS: () GS:882f7fa0() knlGS: [308028.380540] CS: 0010 DS: ES: CR0: 80050033 [308028.381471] CR2: 0008 CR3: 0190a000 CR4: 001427f0 [308028.382376] DR0: DR1: DR2: [308028.383291] DR3: DR6: 0ff0 DR7: 0400 [308028.384180] Stack: [308028.385051] 8832d1b58bc0 88010905fd28 8832d1b588c0 0009 [308028.385933] 8832d1b58bc0 8800b82061c0 1028 88010905fdb8 [308028.386804] a0496ba3 8832d1b58e58 00022b1e2000 819e2108 [308028.387693] Call Trace: [308028.388520] [] ixgbevf_configure+0x5d3/0x7d0 [ixgbevf] [308028.389363] [] ixgbevf_reinit_locked+0x65/0x90 [ixgbevf] [308028.390213] [] ixgbevf_service_task+0x324/0x420 [ixgbevf] [308028.391043] [] process_one_work+0x17b/0x470 [308028.391888] [] worker_thread+0x11b/0x400 [308028.392728] [] ? rescuer_thread+0x400/0x400 [308028.393576] [] kthread+0xcf/0xe0 [308028.394434] [] ? kthread_create_on_node+0x140/0x140 [308028.395339] [] ret_from_fork+0x7c/0xb0 [308028.396205] [] ? kthread_create_on_node+0x140/0x140 [308028.397068] Code: c5 41 89 f6 49 89 c4 48 8d 14 40 48 8b 47 28 49 c1 e4 04 4c 03 67 20 48 8d 1c d0 0f b7 47 4c 41 29 c5 66 0f 1f 84 00 00 00 00 00 <48> 83 7b 08 00 74 73 8b 53 10 48 8b 03 48 01 d0 49 83 c4 10 48 [308028.398959] RIP [] ixgbevf_alloc_rx_buffers+0x60/0x160 [ixgbevf] [308028.399910] RSP [308028.400846] CR2: 0008 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [sriov] [ixgbevf] We have to down PF and VF port to reconfig a port?
This is kernel ixgbevf error log: Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865542] [ cut here ] Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865556] WARNING: at net/sched/sch_generic.c:297 dev_watchdog+0x276/0x280() Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865558] NETDEV WATCHDOG: enp1s16f1 (ixgbevf): transmit queue 0 timed out Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865559] Modules linked in: nbd iptable_mangle iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_con ntrack iptable_filter vhost_net vhost macvtap macvlan ixgbevf(OE) igb_uio(OE) udp_diag unix_diag af_packet_diag netlink_diag tun uio tcp_diag inet_diag bonding ext4 m bcache jbd2 intel_powerclamp coretemp kvm_intel kvm irqbypass crc32_pclmul ghash_clmulni_intel aesni_intel lrw gf128mul glue_helper ablk_helper cryptd ipmi_devintf sg iTCO_wdt iTCO_vendor_support dcdbas pcspkr mei_me mei lpc_ich sb_edac edac_core ipmi_si wmi shpchp ipmi_msghandler acpi_pad acpi_power_meter ip_tables xfs libcrc32c sd_mod crc_t10dif mgag200 drm_kms_helper syscopyarea crct10dif_pclmul sysfillrect crct10dif_common sysimgblt crc32c_intel fb_sys_fops ttm ahci drm ixgbe libahci igb l ibata i2c_algo_bit mdio ptp i2c_core megaraid_sas pps_core dca fjes [last unloaded: nbd] Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865619] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G OE 3.10.0-514.10.2.el7.mt20170307.x86_64 #1 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865622] Hardware name: Dell Inc. PowerEdge R720/068CDY, BIOS 2.5.2 01/28/2015 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865624] 880fff803d88 d4910673413043a2 880fff803d40 8168648f Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865626] 880fff803d78 81085940 880ffdfd Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865629] 880ffdfd1940 0008 880fff803de0 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865631] Call Trace: Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865632] [] dump_stack+0x19/0x1b Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865639] [] warn_slowpath_common+0x70/0xb0 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865641] [] warn_slowpath_fmt+0x5c/0x80 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865644] [] dev_watchdog+0x276/0x280 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865647] [] ? dev_graft_qdisc+0x80/0x80 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865650] [] call_timer_fn+0x36/0x110 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865652] [] ? dev_graft_qdisc+0x80/0x80 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865655] [] run_timer_softirq+0x237/0x340 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865658] [] __do_softirq+0xef/0x280 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865661] [] call_softirq+0x1c/0x30 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865664] [] do_softirq+0x65/0xa0 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865667] [] irq_exit+0x115/0x120 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865670] [] smp_apic_timer_interrupt+0x45/0x60 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865672] [] apic_timer_interrupt+0x6d/0x80 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865673] [] ? hrtimer_start_range_ns+0x1c6/0x390 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865679] [] ? cpuidle_enter_state+0x52/0xc0 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865681] [] ? cpuidle_enter_state+0x48/0xc0 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865683] [] cpuidle_idle_call+0xd9/0x210 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865687] [] arch_cpu_idle+0xe/0x30 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865690] [] cpu_startup_entry+0x245/0x290 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865694] [] rest_init+0x77/0x80 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865698] [] start_kernel+0x42c/0x44d Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865700] [] ? repair_env_string+0x5c/0x5c Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865703] [] ? early_idt_handlers+0x120/0x120 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865705] [] x86_64_start_reservations+0x2a/0x2c Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865708] [] x86_64_start_kernel+0x152/0x175 Dec 27 20:23:22 yf-mos-test-net14 kernel: [103406.865709] ---[ end trace 45a157a1f564e086 ]--- 2017-12-27 10:54 GMT+08:00 Sam <batmanu...@gmail.com>: > > 2017-12-27 10:42 GMT+08:00 Sam <batmanu...@gmail.com>: > >> Hi all, >> >> I'm running OVS-DPDK on a two netdevice server(eth0 and eth1), and I use >> sriov to make one VF and one PF on each netdevice, as bellow. Please omit >> eth2 and eth3. Then two VF port(enp1s16 and enp1s16f1) combine into linux >> bond1 port as management port, two PF port(:01:00.0 and :01:00.1) >> combine into OVS-DPDK bon
Re: [ovs-dev] [sriov] [ixgbevf] We have to down PF and VF port to reconfig a port?
2017-12-27 10:42 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm running OVS-DPDK on a two netdevice server(eth0 and eth1), and I use > sriov to make one VF and one PF on each netdevice, as bellow. Please omit > eth2 and eth3. Then two VF port(enp1s16 and enp1s16f1) combine into linux > bond1 port as management port, two PF port(:01:00.0 and :01:00.1) > combine into OVS-DPDK bond port(mode 4) as dataplane port. > > [root@yf-mos-test-net14 ~]# /usr/local/share/openvswitch/scripts/dpdk_nic_bind >> --status >> Network devices using DPDK-compatible driver >> >> :01:00.0 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio >> unused=ixgbe >> :01:00.1 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio >> unused=ixgbe >> Network devices using kernel driver >> === >> :01:10.0 'X540 Ethernet Controller Virtual Function' if=enp1s16 >> drv=ixgbevf unused=igb_uio >> :01:10.1 'X540 Ethernet Controller Virtual Function' if=enp1s16f1 >> drv=ixgbevf unused=igb_uio >> :08:00.0 'I350 Gigabit Network Connection' if=eth2 drv=igb >> unused=igb_uio >> :08:00.1 'I350 Gigabit Network Connection' if=eth3 drv=igb >> unused=igb_uio >> Other network devices >> = >> > > > I change OVS-DPDK code, and use command to stop OVS-DPDK bond port and > its slaves, and then change its txconf and rxconf, and then start up them. > But the kernel report "Detected Tx Unit Hang ..." and no packets could go > through OVS-DPDK bond port and linux bond port, but use command to show > OVS-DPDK port and linux bond port, > all status is NOT OK(LACP status not OK, I don't if it's because link error or LACP packet process error). > > But when I stop linux bond port first, and then do the same process as > above, no error report and packets could go through OVS-DPDK bond port and > linux bond port. > > So what's this problem and how to fix it ? Thank you~ > I want to make OVS-DPDK bond port could be stop/start/reconfig while running. If others use some other way to do this, could you share it, thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [sriov] [ixgbevf] We have to down PF and VF port to reconfig a port?
Hi all, I'm running OVS-DPDK on a two netdevice server(eth0 and eth1), and I use sriov to make one VF and one PF on each netdevice, as bellow. Please omit eth2 and eth3. Then two VF port(enp1s16 and enp1s16f1) combine into linux bond1 port as management port, two PF port(:01:00.0 and :01:00.1) combine into OVS-DPDK bond port(mode 4) as dataplane port. [root@yf-mos-test-net14 ~]# > /usr/local/share/openvswitch/scripts/dpdk_nic_bind --status > Network devices using DPDK-compatible driver > > :01:00.0 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio > unused=ixgbe > :01:00.1 'Ethernet Controller 10-Gigabit X540-AT2' drv=igb_uio > unused=ixgbe > Network devices using kernel driver > === > :01:10.0 'X540 Ethernet Controller Virtual Function' if=enp1s16 > drv=ixgbevf unused=igb_uio > :01:10.1 'X540 Ethernet Controller Virtual Function' if=enp1s16f1 > drv=ixgbevf unused=igb_uio > :08:00.0 'I350 Gigabit Network Connection' if=eth2 drv=igb > unused=igb_uio > :08:00.1 'I350 Gigabit Network Connection' if=eth3 drv=igb > unused=igb_uio > Other network devices > = > I change OVS-DPDK code, and use command to stop OVS-DPDK bond port and its slaves, and then change its txconf and rxconf, and then start up them. But the kernel report "Detected Tx Unit Hang ..." and no packets could go through OVS-DPDK bond port and linux bond port, but use command to show OVS-DPDK port and linux bond port, all status is OK. But when I stop linux bond port first, and then do the same process as above, no error report and packets could go through OVS-DPDK bond port and linux bond port. So what's this problem and how to fix it ? Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] In ovs-2.4 version, why can't stop dpdk-bond port by `ovs-ofctl mod br dpdkbond DOWN`?
The "dev->port_id" is bond port id, should I use slave port id instead ? 2017-11-27 18:07 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm working in ovs 2.4 version, and I use "dpdkb" type netdev. Then I > call `ovs-ofctl mod br dpdkbond DOWN` to down this device, at last, my > code call "rte_eth_dev_stop(dev->port_id);". > > But counter shows the port is still rx/tx, why? > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] In ovs-2.4 version, why can't stop dpdk-bond port by `ovs-ofctl mod br dpdkbond DOWN`?
Hi all, I'm working in ovs 2.4 version, and I use "dpdkb" type netdev. Then I call `ovs-ofctl mod br dpdkbond DOWN` to down this device, at last, my code call "rte_eth_dev_stop(dev->port_id);". But counter shows the port is still rx/tx, why? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] Restore flows is slow using "ovs-save", is there someone who use RPC to speed up flow restore?
ovs-save is a shell script, using `ovs-ofctl dump-flows br` to write flows into a file, and then use `ovs-ofctl add-flows br FILE` to add them. 2017-11-24 11:07 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm working on speed up ovs restart, I found that restore flows is slow > when there are lots of flows, so I want to use RPC to store flows in > another process, and then restore from it. > > Is there someone who have worked on this? could you share how faster after > this change? Thank you~ > > Or is there some other ways to speed up? Thank you~! > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Restore flows is slow using "ovs-save", is there someone who use RPC to speed up flow restore?
Hi all, I'm working on speed up ovs restart, I found that restore flows is slow when there are lots of flows, so I want to use RPC to store flows in another process, and then restore from it. Is there someone who have worked on this? could you share how faster after this change? Thank you~ Or is there some other ways to speed up? Thank you~! ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Why I can't get max line speed using ovs-dpdk and vhost-user port?
Hi all, I'm using ovs-dpdk with vhost-user port and 10 VM started by qemu, topology is: VM1 ~ VM10 | | -OVS | dpdk-bond the start command of ovs-dpdk is: root 8969 200 0.1 107748696 231284 ?S ovs-vswitchd --dpdk -c 0x40004 -n 4 --socket-mem 10240 --proc-type > secondary -w :01:00.0 -w :01:00.1 -- > unix:/usr/local/var/run/openvswitch/db.sock --pidfile --detach --log-file > --mlockall --no-chdir > --log-file=/usr/local/var/log/openvswitch/ovs-vswitchd.log > --pidfile=/usr/local/var/run/openvswitch/ovs-vswitchd.pid --detach --monitor qemu command is: root 48635 0.9 0.0 3550624 94492 ? Sl Nov07 30:37 > /usr/local/bin/qemu-system-x86_64_2.6.0 -enable-kvm -cpu > qemu64,+vmx,+ssse3,+sse4.1,+sse4.2,+x2apic,+aes,+avx,+vme,+pat,+ss,+pclmulqdq,+xsave,level=13 > -machine pc,accel=kvm -chardev > socket,id=hmqmondev,port=55924,host=127.0.0.1,nodelay,server,nowait -mon > chardev=hmqmondev,id=hmqmon,mode=readline -rtc > base=utc,clock=host,driftfix=none -usb -device usb-tablet -daemonize > -nodefaults -nodefconfig -no-kvm-pit-reinjection -global > kvm-pit.lost_tick_policy=discard -vga std -k en-us -smp 8 -name > gangyewei-35 -m 2048 -boot order=cdn -vnc :24,password -drive > file=/opt/cloud/workspace/disks/0ce6db23-627c-475d-b7ff-36266ba9492a,if=none,id=drive_0,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_0,drive=drive_0,bus=pci.0,addr=0x5 > -drive > file=/opt/cloud/workspace/disks/7f11a37e-28bb-4c54-b903-de2a5b28b284,if=none,id=drive_1,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_1,drive=drive_1,bus=pci.0,addr=0x6 > -drive > file=/opt/cloud/workspace/disks/f2a7e4fb-c457-4e60-a147-18e4fadcb4dc,if=none,id=drive_2,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_2,drive=drive_2,bus=pci.0,addr=0x7 > -device ide-cd,drive=ide0-cd0,bus=ide.1,unit=1 -drive > id=ide0-cd0,media=cdrom,if=none -chardev > socket,id=char-n-650b42fe,path=/usr/local/var/run/openvswitch/n-650b42fe,server > -netdev type=vhost-user,id=n-650b42fe,chardev=char-n-650b42fe,vhostforce=on > -device > virtio-net-pci,netdev=n-650b42fe,mac=00:22:65:0b:42:fe,id=netdev-n-650b42fe,addr=0xf > -object memory-backend-file,id=mem,size=2048M,mem-path=/mnt/huge,share=on > -numa node,memdev=mem -pidfile > /opt/cloud/workspace/servers/a6d3bb5f-fc6c-4891-864c-a0d947d84867/pid > -chardev > socket,path=/opt/cloud/workspace/servers/a6d3bb5f-fc6c-4891-864c-a0d947d84867/qga.sock,server,nowait,id=qga0 > -device virtio-serial -device > virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 the interface between ovs-dpdk and qemu is netdev=n-650b42fe, for ovs-dpdk side, it's vhost-user type interface. the dpdk-bond interface of ovs-dpdk is dpdk bond type. Then I start 10 VM to send TCP packets using iperf3. I use 10Gbps netdevice, but there are only about 5600Mbps through dpdk-bond port, why? Is there someone who have testing of VM and ovs-dpdk bond port, and could you please share the test report? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Please help me to debug memory mis-unmap in ovs-dpdk.
Hi all, I'm debugging a mis-unmap bug in ovs-dpdk, process is this: 1. start ovs-dpdk with 10G socket memory, then use `top`, ovs-vswitchd take 10G memory. command is bellow. 2. start qemu vm1 with vhost device as server to connect port on ovs-dpdk, command is bellow. qemu share 40G memory with ovs-dpdk, then use `top`, ovs-vswitchd take 50G memory. 3. start qemu vm2 with vhost device as server to connect port on ovs-dpdk, command is bellow. qemu share 20G memory with ovs-dpdk, then use `top`, ovs-vswitchd take 70G memory. 4. stop vm1, then use `top`, ovs-vswitchd take 50G memory (I think it should be 30G?). use `cat /proc/meminfo`, 70G memory is not released. Please tell me where is the code ovs-dpdk and qemu communicate with each other about the map/unmap memory region. Thank you~ Is it old bug? Refer this link: http://dev.dpdk.narkive.com/m04py1jJ/dpdk-dev-vhost-user-technical-isssues Command to start ovs-dpdk: ovs-vswitchd --dpdk -c 0x14 -n 4 --socket-mem 10240 --proc-type secondary -w :01:00.0 -w :01:00.1 -- unix:/usr/local/var/run/openvswitch/db.sock --pidfile --detach --log-file --mlockall --no-chdir --log-file=/usr/local/var/log/openvswitch/ovs-vswitchd.log --pidfile=/usr/local/var/run/openvswitch/ovs-vswitchd.pid --detach --monitor Command to start qemu: /usr/local/bin/qemu-system-x86_64 -enable-kvm -cpu qemu64,+vmx,+ssse3,+sse4.1,+sse4.2,+x2apic,+aes,+avx,+vme,+pat,+ss,+pclmulqdq,+xsave,level=13 -machine pc,accel=kvm -chardev socket,id=hmqmondev,port=55919,host=127.0.0.1,nodelay,server,nowait -mon chardev=hmqmondev,id=hmqmon,mode=readline -rtc base=utc,clock=host,driftfix=none -usb -device usb-tablet -daemonize -nodefaults -nodefconfig -no-kvm-pit-reinjection -global kvm-pit.lost_tick_policy=discard -vga std -k en-us -smp 1 -name gangyewei-qemutime-07-1 -m 20480 -boot order=cdn -vnc :19,password -drive file=/opt/cloud/workspace/disks/4a5148da-e34e-4c81-aada-12a247c0337e,if=none,id=drive_0,format=qcow2,cache=none,aio=native -device virtio-blk-pci,id=dev_drive_0,drive=drive_0,bus=pci.0,addr=0x5 -drive file=/opt/cloud/workspace/disks/08eb3f72-07ba-44e9-8ee9-4ab662dbbd1f,if=none,id=drive_1,format=qcow2,cache=none,aio=native -device virtio-blk-pci,id=dev_drive_1,drive=drive_1,bus=pci.0,addr=0x6 -device ide-cd,drive=ide0-cd0,bus=ide.1,unit=1 -drive id=ide0-cd0,media=cdrom,if=none -chardev socket,id=char-n-f879ac2f,path=/usr/local/var/run/openvswitch/n-f879ac2f,server -netdev type=vhost-user,id=n-f879ac2f,chardev=char-n-f879ac2f,vhostforce=on -device virtio-net-pci,netdev=n-f879ac2f,mac=00:22:f8:79:ac:2f,id=netdev-n-f879ac2f,addr=0xf,speed=1000 -object memory-backend-file,id=mem,size=20480M,mem-path=/dev/hugepages,share=on -mem-prealloc -numa node,memdev=mem -pidfile /opt/cloud/workspace/servers/63ef2ec4-556f-47ea-93e0-23089bb59be5/pid -chardev socket,path=/opt/cloud/workspace/servers/63ef2ec4-556f-47ea-93e0-23089bb59be5/qga.sock,server,nowait,id=qga0 -device virtio-serial -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 -qmp unix:/opt/cloud/workspace/servers/63ef2ec4-556f-47ea-93e0-23089bb59be5/qmp.sock,server,nowait Process: [gangyewei@yf-mos-test-net07 63ef2ec4-556f-47ea-93e0-23089bb59be5]$ top PID USER PR NIVIRTRESSHR S %CPU %MEM TIME+ COMMAND 38470 root 10 -10 79.751g 223160 10636 S 200.0 0.2 58:26.77 ovs-vswitchd 4575 root 20 0 41.338g 90036 2924 S 0.0 0.1 0:21.71 qemu-system-x86 5914 root 20 0 20.652g 66824 2876 S 0.0 0.1 0:11.90 qemu-system-x86 [gangyewei@yf-mos-test-net07 63ef2ec4-556f-47ea-93e0-23089bb59be5]$ cd ../46c035e2-605c-4997-b4df-15d13f97758f [gangyewei@yf-mos-test-net07 46c035e2-605c-4997-b4df-15d13f97758f]$ sudo sh stopvm Remove PID /opt/cloud/workspace/servers/46c035e2-605c-4997-b4df-15d13f97758f/pid Remove VNC /opt/cloud/workspace/servers/46c035e2-605c-4997-b4df-15d13f97758f/vnc [gangyewei@yf-mos-test-net07 46c035e2-605c-4997-b4df-15d13f97758f]$ top PID USER PR NIVIRTRESSHR S %CPU %MEM TIME+ COMMAND 38470 root 10 -10 55.751g 223160 10636 S 200.3 0.2 59:30.31 ovs-vswitchd 5914 root 20 0 20.652g 66824 2876 S 0.0 0.1 0:11.92 qemu-system-x86 [gangyewei@yf-mos-test-net07 46c035e2-605c-4997-b4df-15d13f97758f]$ cat /proc/meminfo HugePages_Total: 112 HugePages_Free: 42 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [ovs-dpdk bug] Failing to release memory when QEMU exits?
add dpdk 2017-10-31 10:43 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I found in ovs-dpdk it is failing to release memory when QEMU exits. Is > this a clear bug in ovs-dpdk? If it is, when did this bug fixed? Detail is > bellow: > > > For qemu-2.6.0 and ovs-dpdk, in huge page (1G) environment, after kill the > qemu process, memory which is alloc for the vm could not be released. > > The start up command is: > > CMD1="$QEMU_CMD -D qemu.log -trace events=qemu-events-all -enable-kvm -cpu > qemu64,+vmx,+ssse3,+sse4.1,+sse4.2,+x2apic,+aes,+avx,+vme,+p > at,+ss,+pclmulqdq,+xsave,level=13 -machine pc,accel=kvm -chardev > socket,id=hmqmondev,port=55908,host=127.0.0.1,nodelay,server,nowait -mon > chardev=hmqmondev,id=hmqmon,mode=readline -rtc > base=utc,clock=host,driftfix=none -usb -device usb-tablet -daemonize > -nodefaults -nodefconfig -no-kvm-pit-reinjection -global > kvm-pit.lost_tick_policy=discard -vga std -k en-us -smp 8 -name > gangyewei-qemutime-1 -m 40960 -boot order=cdn -vnc :8,password -drive > file=$DISK_0,if=none,id=drive_0,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_0,drive=drive_0,bus=pci.0,addr=0x5 > -drive file=$DISK_1,if=none,id=drive_1,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_1,drive=drive_1,bus=pci.0,addr=0x6 > -drive file=$DISK_2,if=none,id=drive_2,format=qcow2,cache=none,aio=native > -device virtio-blk-pci,id=dev_drive_2,drive=drive_2,bus=pci.0,addr=0x7 > -device ide-cd,drive=ide0-cd0,bus=ide.1,unit=1 -drive > id=ide0-cd0,media=cdrom,if=none -chardev socket,id=char-n-52b49b80,path > =/usr/local/var/run/openvswitch/n-52b49b80,server -netdev > type=vhost-user,id=n-52b49b80,chardev=char-n-52b49b80,vhostforce=on > -device virtio-net-pci,netdev=n-52b49b80,mac=00:22:52:b4:9b:80,id=ne > tdev-n-52b49b80,addr=0xf$(nic_speed 1) -object > memory-backend-file,id=mem,size=40960M,mem-path=/mnt/huge,share=on -numa > node,memdev=mem -pidfile $PID_FILE -chardev socket,path=/opt/cloud/workspa > ce/servers/4511f52a-f450-40d3-9417-a1e0a27ed507/qga.sock,server,nowait,id=qga0 > -device virtio-serial -device virtserialport,chardev=qga0,na > me=org.qemu.guest_agent.0" > > The stop script is just kill this process. > > the result of `cat /proc/meminfo` show memory is still there. > > After restart ovs-dpdk(which is openvswitch with dpdk lib), memory is > released. > > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [ovs-dpdk bug] Failing to release memory when QEMU exits?
Hi all, I found in ovs-dpdk it is failing to release memory when QEMU exits. Is this a clear bug in ovs-dpdk? If it is, when did this bug fixed? Detail is bellow: For qemu-2.6.0 and ovs-dpdk, in huge page (1G) environment, after kill the qemu process, memory which is alloc for the vm could not be released. The start up command is: CMD1="$QEMU_CMD -D qemu.log -trace events=qemu-events-all -enable-kvm -cpu qemu64,+vmx,+ssse3,+sse4.1,+sse4.2,+x2apic,+aes,+avx,+vme,+ pat,+ss,+pclmulqdq,+xsave,level=13 -machine pc,accel=kvm -chardev socket,id=hmqmondev,port=55908,host=127.0.0.1,nodelay,server,nowait -mon chardev=hmqmondev,id=hmqmon,mode=readline -rtc base=utc,clock=host,driftfix=none -usb -device usb-tablet -daemonize -nodefaults -nodefconfig -no-kvm-pit-reinjection -global kvm-pit.lost_tick_policy=discard -vga std -k en-us -smp 8 -name gangyewei-qemutime-1 -m 40960 -boot order=cdn -vnc :8,password -drive file=$DISK_0,if=none,id=drive_0,format=qcow2,cache=none,aio=native -device virtio-blk-pci,id=dev_drive_0,drive=drive_0,bus=pci.0,addr=0x5 -drive file=$DISK_1,if=none,id=drive_1,format=qcow2,cache=none,aio=native -device virtio-blk-pci,id=dev_drive_1,drive=drive_1,bus=pci.0,addr=0x6 -drive file=$DISK_2,if=none,id=drive_2,format=qcow2,cache=none,aio=native -device virtio-blk-pci,id=dev_drive_2,drive=drive_2,bus=pci.0,addr=0x7 -device ide-cd,drive=ide0-cd0,bus=ide.1,unit=1 -drive id=ide0-cd0,media=cdrom,if=none -chardev socket,id=char-n-52b49b80,path=/usr/local/var/run/openvswitch/n-52b49b80,server -netdev type=vhost-user,id=n-52b49b80,chardev=char-n-52b49b80,vhostforce=on -device virtio-net-pci,netdev=n-52b49b80,mac=00:22:52:b4:9b:80,id= netdev-n-52b49b80,addr=0xf$(nic_speed 1) -object memory-backend-file,id=mem,size=40960M,mem-path=/mnt/huge,share=on -numa node,memdev=mem -pidfile $PID_FILE -chardev socket,path=/opt/cloud/workspa ce/servers/4511f52a-f450-40d3-9417-a1e0a27ed507/qga.sock,server,nowait,id=qga0 -device virtio-serial -device virtserialport,chardev=qga0,na me=org.qemu.guest_agent.0" The stop script is just kill this process. the result of `cat /proc/meminfo` show memory is still there. After restart ovs-dpdk(which is openvswitch with dpdk lib), memory is released. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] how to run script in *.at file in tests folder?
Hi all, I'm testing, I add a new at file, and in that file, I run another shell script like this: AT_SETUP([vhost - run prepare-env.sh]) > #OVS_VSWITCHD_START > # No need to create, as bond1 has been created. > echo "@" > /root/gangyewei/mvs/mvs/tests/prepare-env.sh > AT_CHECK([echo ""]) > AT_CHECK([/root/gangyewei/mvs/mvs/tests/prepare_env], [0], [stdout]) > #OVS_VSWITCHD_STOP > AT_CLEANUP I use root to run the tests, But the log show me permission error, how to fix this bug and how to run shell script in at file? # -*- compilation -*- > 1. vhost.at:23: testing vhost - run prepare-env.sh ... > @ > /root/gangyewei/mvs/mvs/tests/testsuite.dir/at-groups/1/test-source: line > 12: /root/gangyewei/mvs/mvs/tests/prepare-env.sh: Permission denied > ./vhost.at:30: echo "" > --- /dev/null 2017-02-21 23:39:22.88249 +0800 > +++ /root/gangyewei/mvs/mvs/tests/testsuite.dir/at-groups/1/stdout > 2017-08-23 15:43:29.348993538 +0800 > @@ -0,0 +1 @@ > + > 1. vhost.at:23: 1. vhost - run prepare-env.sh (vhost.at:23): FAILED ( > vhost.at:30) Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] Can I use dummy-type bridge together with netdev-type bridge for test?
So if I want to debug netdev-type bridge(which is ovs-dpdk bridge), is there some commands like `ovs-appctl dummy/receive ...` on internal port? Or can I code a command like this on internal port? 2017-08-22 1:12 GMT+08:00 Ben Pfaff <b...@ovn.org>: > On Mon, Aug 21, 2017 at 04:20:42PM +0800, Sam wrote: > > I want to test dpdk based bridge, which is bridge in netdev type > datapath, > > but in this mode I could not use dummy port (As dummy port could send > > packet directly, and lots of ovs test cases use this port, so I want to > use > > it). > > > > So I start ovs with dpdk option and dummy option, and then create two > > bridge (one is dummy type, one is netdev), and use patch port to connect > > them, and add normal flow to them. > > > > But when I send packets use `ovs-appctl dummy/receive ...` into > dummy-type > > bridge, the netdev-type bridge could not receive packet and also could > not > > send this packet from other port (dummy-type port, patch type port and > > netdev-type port are all link up). > > OVS doesn't support packets traveling between different types of > datapaths (e.g. dpdk vs dummy). > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Why 'OVS_VSWITCHD_STOP' do not run?
Hi all, I'm running my ovs test case(my-test.at) like this, but when 'OVS_VSWITCHD_START' or other AT_CHECK failed, 'OVS_VSWITCHD_STOP' will not run, why and how to fix this to let 'OVS_VSWITCHD_STOP' run anyway. Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] How to refresh test cases in tests folder?
I have to ./boot.sh, then the test case will refresh 2017-08-18 9:17 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm running my test cases, I define a new macro in ofproto-macro.at like > this; > > m4_define([_OVS_VSWITCHD_START], >> [OVS_RUNDIR=/usr/local/var/run/openvswitch; export OVS_RUNDIR >>OVS_LOGDIR=/usr/local/var/log/openvswitch; export OVS_LOGDIR >>OVS_DBDIR=/usr/local/var/run/openvswitch; export OVS_DBDIR >>dnl OVS_SYSCONFDIR=; export OVS_SYSCONFDIR >>/etc/init.d/openvswitch stop >>OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | grep >> "Killing ovsdb-server"]) >>/etc/init.d/openvswitch start >>OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ >> grep "Enabling remote OVSDB managers."]) >> ]) > > > And this got wrong, so I change it into this: > > m4_define([_OVS_VSWITCHD_START], >> [OVS_RUNDIR=/usr/local/var/run/openvswitch; export OVS_RUNDIR >>OVS_LOGDIR=/usr/local/var/log/openvswitch; export OVS_LOGDIR >>OVS_DBDIR=/usr/local/var/run/openvswitch; export OVS_DBDIR >>dnl OVS_SYSCONFDIR=; export OVS_SYSCONFDIR >>/etc/init.d/openvswitch stop >>OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ >> grep "Killing ovsdb-server"]) >>/etc/init.d/openvswitch start >>OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ >> grep "Enabling remote OVSDB managers."]) >> ]) > > > But after I reconfigure the ovs, and run `make check`, I got same error as > first, which is : > > /home/gangyewei-3/mvs/mvs/tests/testsuite.dir/at-groups/1/test-source: >> line 41: Enabling remote OVSDB managers.: command not found >> stdout: >> ./netdev-dpdk.at:24: exit code was 1, expected 0 > > > I think this is because the bug of first code, but I have change it into > 2nd code, I don't know why still got error, or I have to re-run `boot.sh` > in OVS folder to re-construct test cases? > > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] How to refresh test cases in tests folder?
Hi all, I'm running my test cases, I define a new macro in ofproto-macro.at like this; m4_define([_OVS_VSWITCHD_START], > [OVS_RUNDIR=/usr/local/var/run/openvswitch; export OVS_RUNDIR >OVS_LOGDIR=/usr/local/var/log/openvswitch; export OVS_LOGDIR >OVS_DBDIR=/usr/local/var/run/openvswitch; export OVS_DBDIR >dnl OVS_SYSCONFDIR=; export OVS_SYSCONFDIR >/etc/init.d/openvswitch stop >OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | grep > "Killing ovsdb-server"]) >/etc/init.d/openvswitch start >OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ > grep "Enabling remote OVSDB managers."]) > ]) And this got wrong, so I change it into this: m4_define([_OVS_VSWITCHD_START], > [OVS_RUNDIR=/usr/local/var/run/openvswitch; export OVS_RUNDIR >OVS_LOGDIR=/usr/local/var/log/openvswitch; export OVS_LOGDIR >OVS_DBDIR=/usr/local/var/run/openvswitch; export OVS_DBDIR >dnl OVS_SYSCONFDIR=; export OVS_SYSCONFDIR >/etc/init.d/openvswitch stop >OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ > grep "Killing ovsdb-server"]) >/etc/init.d/openvswitch start >OVS_WAIT_UNTIL([tail -n 3 $OVS_LOGDIR/ovs-ctl.log | \ > grep "Enabling remote OVSDB managers."]) > ]) But after I reconfigure the ovs, and run `make check`, I got same error as first, which is : /home/gangyewei-3/mvs/mvs/tests/testsuite.dir/at-groups/1/test-source: line > 41: Enabling remote OVSDB managers.: command not found > stdout: > ./netdev-dpdk.at:24: exit code was 1, expected 0 I think this is because the bug of first code, but I have change it into 2nd code, I don't know why still got error, or I have to re-run `boot.sh` in OVS folder to re-construct test cases? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [ovs-dpdk-tests] where is ovs-dpdk test case?
Hi all, I'm working with ovs-dpdk, I want to run ovs-dpdk test case. But I found there is no test case for 'netdev' type bridge and no test case for ovs-dpdk datapath(which is pmd_thread_main). So my question is where could I find these test cases? Also I change some code in dpdk-vhost client mode, how could I find test case for this module? Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] Why my AT_CHECK() can't work?
Then I change commd into `awk '/ACTIVE/' stdout | head -4`, it failed again, log is : ./netdev-dpdk.at:28: awk '/ACTIVE/' stdout | head -4 > --- - 2017-08-09 17:41:24.809066088 +0800 > +++ /home/gangyewei-3/mvs/mvs/tests/testsuite.dir/at-groups/789/stdout > 2017-08-09 17:41:24.807150522 +0800 > @@ -1,5 +1,5 @@ > -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > +LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > + partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > +LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > + partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > 789. netdev-dpdk.at:23: 789. netdev-dpdk - dpdk/bond-show ( > netdev-dpdk.at:23): FAILED (netdev-dpdk.at:28) I don't know where is the difference 2017-08-09 17:15 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm using autotest to test ovs, and I write a new *.at file using only one > AT_CHECK sentence like this: > > AT_CHECK([ovs-appctl dpdk/bond-show dpdkb2], [0], [stdout]) >> AT_CHECK([[sed '/ACTIVE/p' stdout | head -4]], [0], [[LACP actor_state >> ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING]]) > > > but this *.at file failed, log is: > > 789. netdev-dpdk.at:23: testing netdev-dpdk - dpdk/bond-show ... >> ./netdev-dpdk.at:27: ovs-appctl dpdk/bond-show dpdkb2 >> stdout: >> dpdkb2 >> bond_mode: 4 >> slave 0: >> active >> mac address ec:f4:bb:e1:1a:40 >> Link Up - speed 1 Mbps - full-duplex >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> rx pkts=268449, bytes=16502449, mcasts=0, drop=0, errs=0, nombufs=0 >> tx pkts=261, bytes=32020, errs=0 >> slave 1: >> active >> mac address ec:f4:bb:e1:1a:42 >> Link Up - speed 1 Mbps - full-duplex >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> rx pkts=296190, bytes=17934647, mcasts=0, drop=0, errs=0, nombufs=0 >> tx pkts=254, bytes=31496, errs=0 >> ./netdev-dpdk.at:28: sed '/ACTIVE/p' stdout | head -4 >> --- - 2017-08-09 16:59:18.802810195 +0800 >> +++ /home/gangyewei-3/mvs/mvs/tests/testsuite.dir/at-groups/789/stdout >> 2017-08-09 16:59:18.801176471 +0800 >> @@ -1,4 +1,5 @@ >> -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> + dpdkb2 >> +bond_mode: 4 >> + >> +slave 0: >> + >> 789. netdev-dpdk.at:23: 789. netdev-dpdk - dpdk/bond-show ( >> netdev-dpdk.at:23): FAILED (netdev-dpdk.at:28) > > > 1. I don't know what "+" "-" means, and why there are "+" and "-"? > 2. I run `ovs-appctl dpdk/bond-show dpdkb2 | sed -n '/ACTIVE/p' | head > -4`, result is: > >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > > That's exactly what I matched in AT_CHECK, why it fails? > > Autotest is really hard to use... > > 2017-08-09 17:23 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm using autotest to test ovs, and I write a new *.at file using only one > AT_CHECK sentence like this: > > AT_CHECK([ovs-appctl dpdk/bond-show dpdkb2], [0], [stdout]) >> AT_CHECK([[sed '/ACTIVE/p' stdout | head -4]], [0], [[LACP actor_state >> ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING >> partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING]]) > > > but this *.at file failed, log is: > > 789. netdev-dpdk.at:23: testing netdev-dpdk - dpdk/bond-show ... >> ./netdev-dpdk.at:27: ovs-appctl dpdk/bond-show dpdkb2 >>
[ovs-dev] Why my AT_CHECK() can't work?
Hi all, I'm using autotest to test ovs, and I write a new *.at file using only one AT_CHECK sentence like this: AT_CHECK([ovs-appctl dpdk/bond-show dpdkb2], [0], [stdout]) > AT_CHECK([[sed '/ACTIVE/p' stdout | head -4]], [0], [[LACP actor_state > ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING]]) but this *.at file failed, log is: 789. netdev-dpdk.at:23: testing netdev-dpdk - dpdk/bond-show ... > ./netdev-dpdk.at:27: ovs-appctl dpdk/bond-show dpdkb2 > stdout: > dpdkb2 > bond_mode: 4 > slave 0: > active > mac address ec:f4:bb:e1:1a:40 > Link Up - speed 1 Mbps - full-duplex > LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > rx pkts=268449, bytes=16502449, mcasts=0, drop=0, errs=0, nombufs=0 > tx pkts=261, bytes=32020, errs=0 > slave 1: > active > mac address ec:f4:bb:e1:1a:42 > Link Up - speed 1 Mbps - full-duplex > LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > rx pkts=296190, bytes=17934647, mcasts=0, drop=0, errs=0, nombufs=0 > tx pkts=254, bytes=31496, errs=0 > ./netdev-dpdk.at:28: sed '/ACTIVE/p' stdout | head -4 > --- - 2017-08-09 16:59:18.802810195 +0800 > +++ /home/gangyewei-3/mvs/mvs/tests/testsuite.dir/at-groups/789/stdout > 2017-08-09 16:59:18.801176471 +0800 > @@ -1,4 +1,5 @@ > -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > -LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > - partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > + dpdkb2 > +bond_mode: 4 > + > +slave 0: > + > 789. netdev-dpdk.at:23: 789. netdev-dpdk - dpdk/bond-show ( > netdev-dpdk.at:23): FAILED (netdev-dpdk.at:28) 1. I don't know what "+" "-" means, and why there are "+" and "-"? 2. I run `ovs-appctl dpdk/bond-show dpdkb2 | sed -n '/ACTIVE/p' | head -4` in command line, result is: > LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > LACP actor_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING > partner_state ACTIVE AGGREGATION SYNC COLLECTING DISTRIBUTING That's exactly what I matched in AT_CHECK, why it fails? Autotest is really hard to use... ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [ovs-tests] Questions about ovs tests
For example, in tests/dpif-netdev.at file, there are OVS_VSWITCHD_START( > [add-port br0 p1 -- set interface p1 type=dummy > options:pstream=punix:$OVS_RUNDIR/p0.sock ofport_request=1 -- \ >add-port br0 p7 -- set interface p7 ofport_request=7 type=dummy -- \ >add-br br1 -- \ >set bridge br1 other-config:hwaddr=aa:66:aa:66:00:00 -- \ >set bridge br1 datapath-type=dummy other-config:datapath-id=1234 \ > fail-mode=secure -- \ >add-port br1 p2 -- set interface p2 type=dummy > options:stream=unix:$OVS_RUNDIR/p0.sock ofport_request=2 -- \ >add-port br1 p8 -- set interface p8 ofport_request=8 type=dummy --]) if no vswitchd started, `add-port` will failed. 2017-08-08 10:03 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm working on ovs tests, and I want to add my test, so I have few > questions: > > 1. what testing frame work does ovs-tests use, as I have seen lots of *.at > file, lots of AT_*() macro. > > 2. Will ovs-tests start ovs-vswitchd or ovsdb-server when running test by > `make check` command? As if no vswitchd started, how to test it? > > 3. Also there are *.py files, how it works? > > Thank you~ > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [ovs-tests] Questions about ovs tests
Hi all, I'm working on ovs tests, and I want to add my test, so I have few questions: 1. what testing frame work does ovs-tests use, as I have seen lots of *.at file, lots of AT_*() macro. 2. Will ovs-tests start ovs-vswitchd or ovsdb-server when running test by `make check` command? As if no vswitchd started, how to test it? 3. Also there are *.py files, how it works? Thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] When did vlan tag add into packet in ovs and ovs-dpdk?
Sorry, Add a question: 3. I start to capture packets in b2 port on br_t07, when I use vm(121) to ping vm(120), I could not capture any packets(including arp); when I use vm(121) to ping vm(220), I could capture it; when I use vm(121) to ping unknown host like 123, I could not capture any thing. Why no thing when I ping unknown host? 2017-07-14 9:46 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm testing vlan in both ovs and ovs-dpdk. My topology is: > > vm(121) vm(120) vm(220) > | | | >--- > -- >br_t07| b2 b2 | br_t08 > -- > > I set vlan 1020 by `ovs-vsctl set vm121 tag 1020` in br_t07's vm(121) port > and vm(120) port, so the vm(121) could ping through vm(120). > > I set no vlan tag on vm(220), so vm(121) could not ping through vm(220). > > For normal ovs, vm(121) etc port is internal type, b2 is bond port; for > ovs-dpdk it's dpdkvhostuser type, b2 is dpdk bond port. > > Now I use ovs-dump tool to capture packets in br_t07's b2, and I can's > capture packets with vlan 1020 tag; and I use gdb to debug, also I can't > get it. > > My question is: > 1. In normal ovs, where or which function is to add vlan tag onto packet? > I think it's in datapath? > 2. This is important, in ovs-dpdk, where or which function is to add vlan > tag onto packet? I think it's in pmd? > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] When did vlan tag add into packet in ovs and ovs-dpdk?
For hardware switch, a port with vlan 1020, it's behavior is: 1. packet come into port will set vlan tag 1020 in switch, and then send it. 2. only packet with vlan 1020 will come out from this port. So I don't know if ovs works like this? 2017-07-14 9:46 GMT+08:00 Sam <batmanu...@gmail.com>: > Hi all, > > I'm testing vlan in both ovs and ovs-dpdk. My topology is: > > vm(121) vm(120) vm(220) > | | | >--- > -- >br_t07| b2 b2 | br_t08 > -- > > I set vlan 1020 by `ovs-vsctl set vm121 tag 1020` in br_t07's vm(121) port > and vm(120) port, so the vm(121) could ping through vm(120). > > I set no vlan tag on vm(220), so vm(121) could not ping through vm(220). > > For normal ovs, vm(121) etc port is internal type, b2 is bond port; for > ovs-dpdk it's dpdkvhostuser type, b2 is dpdk bond port. > > Now I use ovs-dump tool to capture packets in br_t07's b2, and I can's > capture packets with vlan 1020 tag; and I use gdb to debug, also I can't > get it. > > My question is: > 1. In normal ovs, where or which function is to add vlan tag onto packet? > I think it's in datapath? > 2. This is important, in ovs-dpdk, where or which function is to add vlan > tag onto packet? I think it's in pmd? > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] When did vlan tag add into packet in ovs and ovs-dpdk?
Hi all, I'm testing vlan in both ovs and ovs-dpdk. My topology is: vm(121) vm(120) vm(220) | | | ----- br_t07| b2 b2 | br_t08 -- I set vlan 1020 by `ovs-vsctl set vm121 tag 1020` in br_t07's vm(121) port and vm(120) port, so the vm(121) could ping through vm(120). I set no vlan tag on vm(220), so vm(121) could not ping through vm(220). For normal ovs, vm(121) etc port is internal type, b2 is bond port; for ovs-dpdk it's dpdkvhostuser type, b2 is dpdk bond port. Now I use ovs-dump tool to capture packets in br_t07's b2, and I can's capture packets with vlan 1020 tag; and I use gdb to debug, also I can't get it. My question is: 1. In normal ovs, where or which function is to add vlan tag onto packet? I think it's in datapath? 2. This is important, in ovs-dpdk, where or which function is to add vlan tag onto packet? I think it's in pmd? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] how to get packet information in ovs-dpdk?
Yes it is. I'm also confused, as when I use normal kernel based ovs-2.3.0, `ovs-ofctl snoop br0` works good and will not quit. 2017-07-12 23:24 GMT+08:00 Ben Pfaff <b...@ovn.org>: > On Wed, Jul 12, 2017 at 04:21:04PM +0800, Sam wrote: > > hi all, > > > > I'm running ovs-dpdk(ovs-2.4.9), I found the counter of bond port of br_t > > is increasing, but I want to know what's these packets, how could I do > this? > > > > first, I use `ovs-ofctl snoop br_t`, but it quit quickly as below: > > > > > [root@yf-mos-test-net07 ~]# /usr/local/bin/ovs-ofctl snoop > > > /usr/local/var/run/openvswitch/br_t.mgmt > > > [root@yf-mos-test-net07 ~]# /usr/local/bin/ovs-ofctl snoop > > > /usr/local/var/run/openvswitch/br_t.mgmt > > > ovs-ofctl: /usr/local/var/run/openvswitch/ovs-ofctl.pid: already > running > > > as pid 22082, aborting > > That is a strange message. It should only appear if you use --pidfile > and --daemon and there's already an ovs-ofctl running that way. Is the > above the complete context from your session? > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] how to get packet information in ovs-dpdk?
hi all, I'm running ovs-dpdk(ovs-2.4.9), I found the counter of bond port of br_t is increasing, but I want to know what's these packets, how could I do this? first, I use `ovs-ofctl snoop br_t`, but it quit quickly as below: > [root@yf-mos-test-net07 ~]# /usr/local/bin/ovs-ofctl snoop > /usr/local/var/run/openvswitch/br_t.mgmt > [root@yf-mos-test-net07 ~]# /usr/local/bin/ovs-ofctl snoop > /usr/local/var/run/openvswitch/br_t.mgmt > ovs-ofctl: /usr/local/var/run/openvswitch/ovs-ofctl.pid: already running > as pid 22082, aborting Then I debug ovs-vswitchd use `gdb -p 213214` and set break as below: > Breakpoint 3, netdev_rxq_recv (rx=0x7f1a5a6ff2c0, buffers=0x7f25e17f9880, > cnt=0x7f25e17f987c) at lib/netdev.c:695 > 695retval = rx->netdev->netdev_class->rxq_recv(rx, buffers, cnt); > (gdb) finish > Run till exit from #0 netdev_rxq_recv (rx=0x7f1a5a6ff2c0, > buffers=0x7f25e17f9880, cnt=0x7f25e17f987c) > at lib/netdev.c:695 > 0x0055eeec in dp_netdev_process_rxq_port (pmd=0x7f25e80d7010, > port=0x1059fd0, rxq=0x7f1a5a6ff2c0) > at lib/dpif-netdev.c:2590 > 2590error = netdev_rxq_recv(rxq, packets, ); > Value returned is $5 = 11 > (gdb) p packet > No symbol "packet" in current context. > (gdb) p p^CQuit > (gdb) p cnt > $6 = 0 > (gdb) d > Delete all breakpoints? (y or n) y > (gdb) b 2593 if cnt!=0 > Breakpoint 4 at 0x55ef27: file lib/dpif-netdev.c, line 2593. > (gdb) c but cnt is still 0, which means no packets received. At last, I use `ovs-appctl vlog/set dpif_netdev dbg`, but the log show nothing. How could I do this? thank you~ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] Does ovs-dpdk support QoS on dpdkvhostuser port and other port?
Hi, all Does ovs-dpdk support QoS on dpdkvhostuser port and other port, just like 'HTB' for kernel based ovs port? Or will ovs-dpdk support this? ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev