Bug 1834182 - [ixgbe] ovs dpdk bonding port no response packet sometimes when port down and port up switch port
Summary: [ixgbe] ovs dpdk bonding port no response packet sometimes when port down and...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux Fast Datapath
Classification: Red Hat
Component: openvswitch
Version: FDP 20.D
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Timothy Redaelli
QA Contact: Hekai Wang
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-05-11 09:16 UTC by Hekai Wang
Modified: 2022-11-09 08:58 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-11-09 08:58:22 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker FD-645 0 None None None 2022-02-22 05:52:39 UTC

Description Hekai Wang 2020-05-11 09:16:22 UTC
Description of problem:
connected by fiber 
ovs dpdk bond active-backup mode no response packets sometimes when port down and port up switch port which is corresponding with dpdk bonding active port 

Version-Release number of selected component (if applicable):
[root@dell-per730-18 bug-1822198]# rpm -qa | grep openv
kernel-kernel-networking-openvswitch-common-2.0-67.noarch
openvswitch-test-2.9.0-110.HF1822198.1.el7fdp.noarch
openvswitch-selinux-extra-policy-1.0-15.el7fdp.noarch
python-openvswitch-2.9.0-110.HF1822198.1.el7fdp.x86_64
kernel-kernel-networking-openvswitch-mem_leak_check-1.0-7.noarch
openvswitch-2.9.0-110.HF1822198.1.el7fdp.x86_64

[root@dell-per730-54 ~]# rpm -qa | grep dpdk
kernel-kernel-networking-ovs-dpdk-bonding-bug-1822198-1.0-2.noarch
dpdk-18.11.5-1.el7_8.x86_64
dpdk-tools-18.11.5-1.el7_8.x86_64
[root@dell-per730-54 ~]# 


How reproducible:
Sometimes

Steps to Reproduce:
Install rhel7 on both server and client side
For server side
enalbe vfio-pci 
ovs add bonding port with active backup mode no lacp enabled 
Create vm , start it and config an ip address inside vm

For server side
[root@dell-per730-54 bug-1822198]# ovs-tcpdump -i dpdkbond icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on midpdkbond, link-type EN10MB (Ethernet), capture size 262144 bytes
04:58:09.372944 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 1, length 64
04:58:09.372991 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 1, length 64
04:58:10.372192 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 2, length 64
04:58:10.372304 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 2, length 64
04:58:11.372191 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 3, length 64
04:58:11.372306 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 3, length 64
04:58:12.372189 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 4, length 64
04:58:12.372300 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 4, length 64
04:58:13.372194 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 5, length 64
04:58:13.372307 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 5, length 64
04:58:14.372190 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 6, length 64
04:58:14.372303 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 6, length 64
04:58:15.372193 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 7, length 64
04:58:15.372303 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 7, length 64
04:58:16.372190 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 8, length 64
04:58:16.372301 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 8, length 64
04:58:17.372204 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 9, length 64
04:58:17.372323 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 9, length 64
04:58:18.372187 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 10, length 64
04:58:18.372521 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 10, length 64
04:58:19.372187 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 11, length 64
04:58:19.372520 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 11, length 64
04:58:20.372186 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 12, length 64
04:58:20.372516 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 12, length 64
04:58:21.372189 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 13, length 64
04:58:21.372223 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 13, length 64
04:58:22.372186 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 14, length 64
04:58:22.372216 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 14, length 64
04:58:23.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 15, length 64
04:58:23.372520 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 15, length 64
04:58:24.372186 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 16, length 64
04:58:24.372517 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 16, length 64
04:58:25.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 17, length 64
04:58:25.372522 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 17, length 64
04:58:26.372186 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 18, length 64
04:58:26.372517 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 18, length 64
04:58:27.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 19, length 64
04:58:27.372522 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 19, length 64
04:58:28.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 20, length 64
04:58:28.372522 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 20, length 64
04:58:29.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 21, length 64
04:58:29.372522 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 21, length 64
04:58:30.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 22, length 64
04:58:30.372519 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 22, length 64
04:58:31.372191 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 23, length 64
04:58:31.372523 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 23, length 64
04:58:32.372188 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 24, length 64
04:58:32.372518 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 24, length 64
04:58:33.372189 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 25, length 64
04:58:33.372523 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 25, length 64
04:58:34.372189 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 26, length 64
04:58:34.372523 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 26, length 64
04:58:35.372190 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 27, length 64
04:58:35.372522 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 27, length 64
04:58:36.372189 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 28, length 64
04:58:36.372520 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 28, length 64
04:58:37.372190 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 29, length 64
04:58:37.372524 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 29, length 64
04:58:38.372190 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 30, length 64
04:58:38.372521 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 30, length 64
04:58:39.372206 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 31, length 64
04:58:40.372198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 32, length 64
04:58:40.372527 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 32, length 64
04:58:41.372196 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 33, length 64
04:58:41.372525 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 33, length 64
04:58:42.372196 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 34, length 64
04:58:42.372521 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 34, length 64
04:58:43.372199 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 35, length 64
04:58:43.394602 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 35, length 64
04:58:44.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 36, length 64
04:58:44.373230 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 36, length 64
04:58:45.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 37, length 64
04:58:45.373528 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 37, length 64
04:58:46.373197 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 38, length 64
04:58:46.373525 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 38, length 64
04:58:47.373197 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 39, length 64
04:58:47.373525 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 39, length 64
04:58:48.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 40, length 64
04:58:48.373526 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 40, length 64
04:58:49.373196 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 41, length 64
04:58:49.373526 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 41, length 64
04:58:50.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 42, length 64
04:58:50.373612 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 42, length 64
04:58:51.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 43, length 64
04:58:51.373530 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 43, length 64
04:58:52.373199 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 44, length 64
04:58:52.373527 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 44, length 64
04:58:53.373198 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 45, length 64
04:58:53.373527 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 45, length 64
04:58:54.373199 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 46, length 64
04:58:54.373531 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 46, length 64
04:58:55.373200 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 47, length 64
04:58:55.373531 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 47, length 64
04:58:56.373199 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 48, length 64
04:58:56.373528 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 48, length 64
04:58:57.373199 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 49, length 64
04:58:57.373527 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 49, length 64
04:58:58.373200 IP 192.168.99.200 > 192.168.99.201: ICMP echo request, id 31066, seq 50, length 64
04:58:58.373528 IP 192.168.99.201 > 192.168.99.200: ICMP echo reply, id 31066, seq 50, length 64
^C99 packets captured
99 packets received by filter
0 packets dropped by kernel

99 packets captured including 49 pairs and one request packets
Please see seq 31 , There is only one request packet but no response packet 
This is server side 

For client side
Config an ip address on one interface 

[root@dell-per730-18 bug-1822198]# ping 192.168.99.201
PING 192.168.99.201 (192.168.99.201) 56(84) bytes of data.
64 bytes from 192.168.99.201: icmp_seq=1 ttl=64 time=0.119 ms
64 bytes from 192.168.99.201: icmp_seq=2 ttl=64 time=0.161 ms
64 bytes from 192.168.99.201: icmp_seq=3 ttl=64 time=0.159 ms
64 bytes from 192.168.99.201: icmp_seq=4 ttl=64 time=0.157 ms
64 bytes from 192.168.99.201: icmp_seq=5 ttl=64 time=0.159 ms
64 bytes from 192.168.99.201: icmp_seq=6 ttl=64 time=0.158 ms
64 bytes from 192.168.99.201: icmp_seq=7 ttl=64 time=0.158 ms
64 bytes from 192.168.99.201: icmp_seq=8 ttl=64 time=0.156 ms
64 bytes from 192.168.99.201: icmp_seq=9 ttl=64 time=0.167 ms
64 bytes from 192.168.99.201: icmp_seq=10 ttl=64 time=0.365 ms
64 bytes from 192.168.99.201: icmp_seq=11 ttl=64 time=0.365 ms
64 bytes from 192.168.99.201: icmp_seq=12 ttl=64 time=0.360 ms
64 bytes from 192.168.99.201: icmp_seq=13 ttl=64 time=0.066 ms
64 bytes from 192.168.99.201: icmp_seq=14 ttl=64 time=0.059 ms
64 bytes from 192.168.99.201: icmp_seq=15 ttl=64 time=0.362 ms
64 bytes from 192.168.99.201: icmp_seq=16 ttl=64 time=0.359 ms
64 bytes from 192.168.99.201: icmp_seq=17 ttl=64 time=0.364 ms
64 bytes from 192.168.99.201: icmp_seq=18 ttl=64 time=0.360 ms
64 bytes from 192.168.99.201: icmp_seq=19 ttl=64 time=0.364 ms
64 bytes from 192.168.99.201: icmp_seq=20 ttl=64 time=0.363 ms
64 bytes from 192.168.99.201: icmp_seq=21 ttl=64 time=0.364 ms
64 bytes from 192.168.99.201: icmp_seq=22 ttl=64 time=0.360 ms
64 bytes from 192.168.99.201: icmp_seq=23 ttl=64 time=0.364 ms
64 bytes from 192.168.99.201: icmp_seq=24 ttl=64 time=0.361 ms
64 bytes from 192.168.99.201: icmp_seq=25 ttl=64 time=0.364 ms
64 bytes from 192.168.99.201: icmp_seq=26 ttl=64 time=0.363 ms
64 bytes from 192.168.99.201: icmp_seq=27 ttl=64 time=0.362 ms
64 bytes from 192.168.99.201: icmp_seq=28 ttl=64 time=0.360 ms
64 bytes from 192.168.99.201: icmp_seq=29 ttl=64 time=0.363 ms
64 bytes from 192.168.99.201: icmp_seq=30 ttl=64 time=0.360 ms
64 bytes from 192.168.99.201: icmp_seq=32 ttl=64 time=0.377 ms
64 bytes from 192.168.99.201: icmp_seq=33 ttl=64 time=0.372 ms
64 bytes from 192.168.99.201: icmp_seq=34 ttl=64 time=0.370 ms
64 bytes from 192.168.99.201: icmp_seq=35 ttl=64 time=22.4 ms
64 bytes from 192.168.99.201: icmp_seq=36 ttl=64 time=0.075 ms
64 bytes from 192.168.99.201: icmp_seq=37 ttl=64 time=0.373 ms
64 bytes from 192.168.99.201: icmp_seq=38 ttl=64 time=0.373 ms
64 bytes from 192.168.99.201: icmp_seq=39 ttl=64 time=0.371 ms
64 bytes from 192.168.99.201: icmp_seq=40 ttl=64 time=0.373 ms
64 bytes from 192.168.99.201: icmp_seq=41 ttl=64 time=0.371 ms
64 bytes from 192.168.99.201: icmp_seq=42 ttl=64 time=0.461 ms
64 bytes from 192.168.99.201: icmp_seq=43 ttl=64 time=0.374 ms
64 bytes from 192.168.99.201: icmp_seq=44 ttl=64 time=0.373 ms
64 bytes from 192.168.99.201: icmp_seq=45 ttl=64 time=0.372 ms
64 bytes from 192.168.99.201: icmp_seq=46 ttl=64 time=0.377 ms
64 bytes from 192.168.99.201: icmp_seq=47 ttl=64 time=0.376 ms
64 bytes from 192.168.99.201: icmp_seq=48 ttl=64 time=0.374 ms
64 bytes from 192.168.99.201: icmp_seq=49 ttl=64 time=0.372 ms
64 bytes from 192.168.99.201: icmp_seq=50 ttl=64 time=0.373 ms
^C
--- 192.168.99.201 ping statistics ---
50 packets transmitted, 49 received, 2% packet loss, time 49000ms
rtt min/avg/max/mdev = 0.059/0.762/22.448/3.131 ms
[root@dell-per730-18 bug-1822198]# 


In the mean time , do port down and port up operation 
[root@dell-per730-54 ~]# swcfg port_down 5010 Eth1/3 && sleep 5 && swcfg port_up 5010 Eth1/3 && sleep 5 && swcfg port_down 5010 Eth1/4 && sleep 5 && swcfg port_up 5010 Eth1/4


[root@dell-per730-54 bug-1822198]# 
[root@dell-per730-54 bug-1822198]# 
[root@dell-per730-54 bug-1822198]# 





1.
2.
3.

Actual results:
Can not find reply packet from server side

Expected results:
It works fine .


Additional info:


Note You need to log in before you can comment on or make changes to this bug.