- case "${case_text}" in
- "1n_skx")
- # Pick up first two DUT1 interfaces binded to i40evf.
- for netdev in "${dut1_side[@]::2}"; do
- DUT1_NETDEVS+=(${netdev})
- done
- # Corresponding TG interfaces will be same ID.SUB_ID, but on
- # opposite linked device.
- for netdev in "${DUT1_NETDEVS[@]}"; do
- TG_NETDEVS+=(${netdev/$dut1_netdev/$tg_netdev})
- done
- ;;
- *)
- for netdev in "${tg_side[@]::2}"; do
- TG_NETDEVS+=(${netdev})
- done
- for netdev in "${dut1_side[@]::2}"; do
- DUT1_NETDEVS+=(${netdev})
- done
- esac
+ i=0
+ for netdev in "${TG_NETDEVS[@]}"; do
+ # Find the index of selected tg netdev among tg_netdevs
+ # e.g. enp8s5f7 is a vf of netdev enp8s5 with index 11
+ # and the corresponding dut1 netdev is enp133s13.
+ while [[ "${netdev}" != "${tg_netdev[$i]}"* ]]; do
+ ((i++))
+ done
+ # Rename tg netdev to dut1 netdev
+ # e.g. enp8s5f7 -> enp133s13f7
+ DUT1_NETDEVS+=(${netdev/${tg_netdev[$i]}/${dut1_netdev[$i]}})
+ # Don't need to reset i, all netdevs are sorted.
+ done