Uploaded image for project: 'Fast Datapath Product'
  1. Fast Datapath Product
  2. FDP-3025

QE verification: i40e/ice/mlx5_core: run iperf test failed sometimes when running ovs dpdk tunnel function test

    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      ( ) The bug has been reproduced and verified by QE members
      ( ) Test coverage has been added to downstream CI
      ( ) For new feature, failed test plans have bugs added as children to the epic
      ( ) The bug is cloned to any relevant release that we support and/or is needed

      Show
      ( ) The bug has been reproduced and verified by QE members ( ) Test coverage has been added to downstream CI ( ) For new feature, failed test plans have bugs added as children to the epic ( ) The bug is cloned to any relevant release that we support and/or is needed
    • rhel-10
    • None

      This ticket is tracking the QE verification effort for the solution to the problem described below.

       Problem Description: Clearly explain the issue.

      i40e: run iperf ipv4 test failed sometimes when running ovs dpdk tunnel function test
       

       Impact Assessment: Describe the severity and impact (e.g., network down,availability of a workaround, etc.).

       

       Software Versions: Specify the exact versions in use (e.g.,openvswitch3.1-3.1.0-147.el8fdp).

      openvswitch3.6-3.6.0-12.el10fdp.fdpqe1601.9.x86_64
      openvswitch3.6-3.6.0-12.el9fdp.x86_64
       

        Issue Type: Indicate whether this is a new issue or a regression (if a regression, state the last known working version).

      It is not a regression issue, it exist on previous version.
       

       Reproducibility: Confirm if the issue can be reproduced consistently. If not, describe how often it occurs.

      It can reproducibility.
       

       Reproduction Steps: Provide detailed steps or scripts to replicate the issue.

      Run ovs dpdk tunnel function test:
      server i40e <-connect-> client i40e
      server:

       ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ofport_request=10 options:dpdk-devargs=0000:a0:00.0
       ovs-vsctl --timeout 10 set Interface dpdk0 options:n_rxq=4
       ovs-vsctl --if-exists del-br ovsbr1
       ovs-vsctl add-br ovsbr1 -- set bridge ovsbr1 datapath_type=netdev
       ovs-vsctl add-port ovsbr1 vxlan0 -- set interface vxlan0 type=vxlan options:remote_ip=192.168.9.105 options:dst_port=8472 options:key=1000 ofport_request=30
        ovs-vsctl add-port ovsbr1 vhost0 -- set Interface vhost0 type=dpdkvhostuserclient -- set Interface vhost0 options:vhost-server-path=/tmp/vhost0
        ip link set ovsbr0 up
       ip link set ovsbr1 up
       ip addr add 192.168.9.106/24 dev ovsbr0
       ovs-vsctl show
      8a3915a4-d4d3-4504-bf2f-1879f4bf22d6
          Bridge ovsbr0
              datapath_type: netdev
              Port ovsbr0
                  Interface ovsbr0
                      type: internal
              Port dpdk0
                  Interface dpdk0
                      type: dpdk
                      options: {dpdk-devargs="0000:a0:00.0", n_rxq="4"}
          Bridge ovsbr1
              datapath_type: netdev
              Port vhost0
                  Interface vhost0
                      type: dpdkvhostuserclient
                      options: {vhost-server-path="/tmp/vhost0"}
              Port vxlan0
                  Interface vxlan0
                      type: vxlan
                      options: {dst_port="8472", key="1000", remote_ip="192.168.9.105"}
              Port ovsbr1
                  Interface ovsbr1
                      type: internal
          ovs_version: "3.6.0-12.el10fdp.fdpqe1601.9"
          
          inside guest:
          ip link add link enp4s0 vlan1 type vlan id 1
          ...
          ip link add link enp4s0 vlan10 type vlan id 10
          ip addr add 192.168.1.1/24 dev vlan1
          ip addr add 2001:0db8:1::1/64 dev vlan1
          ...
          ip addr add 192.168.10.1/24 dev vlan10
          ip addr add 2001:0db8:10::1/64 dev vlan10
      

      client side:

       ovs-vsctl add-port ovsbr0 dpdk0 -- set Interface dpdk0 type=dpdk ofport_request=10 options:dpdk-devargs=0000:a0:00.0
       ovs-vsctl --timeout 10 set Interface dpdk0 options:n_rxq=4
       ovs-vsctl --if-exists del-br ovsbr1
       ovs-vsctl add-br ovsbr1 -- set bridge ovsbr1 datapath_type=netdev
       ovs-vsctl add-port ovsbr1 vxlan0 -- set interface vxlan0 type=vxlan options:remote_ip=192.168.9.106 options:dst_port=8472 options:key=1000 ofport_request=30
        ovs-vsctl add-port ovsbr1 vhost0 -- set Interface vhost0 type=dpdkvhostuserclient -- set Interface vhost0 options:vhost-server-path=/tmp/vhost0
        ip link set ovsbr0 up
       ip link set ovsbr1 up
       ip addr add 192.168.9.105/24 dev ovsbr0
        ovs-vsctl show
      9e7bb523-840a-4998-bf99-7e3c5177f1f3
          Bridge ovsbr1
              datapath_type: netdev
              Port vxlan0
                  Interface vxlan0
                      type: vxlan
                      options: {dst_port="8472", key="1000", remote_ip="192.168.9.106"}
              Port vhost0
                  Interface vhost0
                      type: dpdkvhostuserclient
                      options: {vhost-server-path="/tmp/vhost0"}
              Port ovsbr1
                  Interface ovsbr1
                      type: internal
          Bridge ovsbr0
              datapath_type: netdev
              Port dpdk0
                  Interface dpdk0
                      type: dpdk
                      options: {dpdk-devargs="0000:a0:00.0", n_rxq="4"}
              Port ovsbr0
                  Interface ovsbr0
                      type: internal
          ovs_version: "3.6.0-12.el10fdp.fdpqe1601.9"
          
          inside guest:
          ip link add link enp4s0 vlan1 type vlan id 1
          ...
          ip link add link enp4s0 vlan10 type vlan id 10
          ip addr add 192.168.1.2/24 dev vlan1
          ip addr add 2001:0db8:1::2/64 dev vlan1
          ...
          ip addr add 192.168.10.2/24 dev vlan10
          ip addr add 2001:0db8:10::2/64 dev vlan10
      

      inside guest on the client, run ping and iperf test.

      [root@localhost ~]# ping 192.168.1.1 -c 10
      [?2004l
      PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
      64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.556 ms
      64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.106 ms
      64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=0.096 ms
      64 bytes from 192.168.1.1: icmp_seq=9 ttl=64 time=0.118 ms
      
      [root@localhost ~]# ping6 2001:0db8:1::1 -c 10
      [?2004l
      PING 2001:0db8:1::1 (2001:db8:1::1) 56 data bytes
      64 bytes from 2001:db8:1::1: icmp_seq=1 ttl=64 time=0.355 ms
      64 bytes from 2001:db8:1::1: icmp_seq=4 ttl=64 time=0.097 ms
      64 bytes from 2001:db8:1::1: icmp_seq=5 ttl=64 time=0.099 ms
      64 bytes from 2001:db8:1::1: icmp_seq=6 ttl=64 time=0.111 ms
      64 bytes from 2001:db8:1::1: icmp_seq=7 ttl=64 time=0.092 ms
      64 bytes from 2001:db8:1::1: icmp_seq=8 ttl=64 time=0.094 ms
      64 bytes from 2001:db8:1::1: icmp_seq=9 ttl=64 time=0.129 ms
      
      [root@localhost ~]# iperf3 -c 192.168.1.1 -u
      [?2004l
      Connecting to host 192.168.1.1, port 5201
      [  5] local 192.168.1.2 port 55105 connected to 192.168.1.1 port 5201
      [ ID] Interval           Transfer     Bitrate         Total Datagrams
      [  5]   0.00-1.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   1.00-2.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   2.00-3.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   3.00-4.00   sec   127 KBytes  1.04 Mbits/sec  93  
      [  5]   4.00-5.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   5.00-6.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   6.00-7.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   7.00-8.00   sec   127 KBytes  1.04 Mbits/sec  93  
      [  5]   8.00-9.00   sec   128 KBytes  1.05 Mbits/sec  94  
      [  5]   9.00-10.00  sec   128 KBytes  1.05 Mbits/sec  94  
      - - - - - - - - - - - - - - - - - - - - - - - - -
      [ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
      [  5]   0.00-10.00  sec  1.25 MBytes  1.05 Mbits/sec  0.000 ms  0/938 (0%)  sender
      [  5]   0.00-10.00  sec  1006 KBytes   824 Kbits/sec  0.002 ms  201/938 (21%)  receiver
      
      iperf Done.
      
      

       

       Expected Behavior: Describe what should happen under normal circumstances.

      All iperf3 test should be successfully.
       

       Observed Behavior: Explain what actually happens.

      some iperf3 test run failed.
      rhel9.7 job: https://beaker.engineering.redhat.com/jobs/12004188
      rhel10 job:
      https://beaker.engineering.redhat.com/jobs/11990285
      Above job, according to following log, some iperf test failed
      https://beaker-archive.prod.engineering.redhat.com/beaker-logs/2025/11/119902/11990285/20106765/207124988/taskout.log 

      [root@localhost ~]# iperf3 -c 192.168.6.1 -u
      [?2004l
      Connecting to host 192.168.6.1, port 5201
      iperf3: error - unable to read from stream socket: Resource temporarily unavailable
      [?2004h[root@localhost ~]# echo $?
      [?2004l
      1
      

       Troubleshooting Actions: Outline the steps taken to diagnose or resolve the issue so far.

       

       Logs: If you collected logs please provide them (e.g. sos report, /var/log/openvswitch/* , testpmd console)

              ovs-qe Openvswtich Quality Engineering Bot
              tli@redhat.com Ting Li
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: