Hello Slava, Thanks for your response back.
While waiting your final response, I am sending additional info from my side. 1 I am using "MLNX_OFED_LINUX-4.7-1.0.0.1-ubuntu18.04-x86_64" as OFED. tx_h-yamashita@R730n10:~/dpdk-next-net$ pwd /home/tx_h-yamashita/dpdk-next-net tx_h-yamashita@R730n10:~/dpdk-next-net$ ls app MAINTAINERS buildtools Makefile config meson.build devtools meson_options.txt doc mk drivers MLNX_OFED_LINUX-4.7-1.0.0.1-ubuntu18.04-x86_64 examples MLNX_OFED_LINUX-4.7-1.0.0.1-ubuntu18.04-x86_64.tgz GNUmakefile README kernel usertools lib VERSION license x86_64-native-linuxapp-gcc 2. I am using ConnextX-4 and ConnectX-5. I attach the result of typing ethtool -i . Bus info Device Class Description ========================================================== pci@0000:03:00.0 enp3s0f0 network MT27710 Family [ConnectX-4 Lx] pci@0000:03:00.1 enp3s0f1 network MT27710 Family [ConnectX-4 Lx] pci@0000:04:00.0 enp4s0f0 network MT27800 Family [ConnectX-5] pci@0000:04:00.1 enp4s0f1 network MT27800 Family [ConnectX-5] tx_h-yamashita@R730n10:~/dpdk-next-net$ ethtool -i enp3s0f0 driver: mlx5_core version: 4.7-1.0.0 firmware-version: 14.25.1020 (MT_0000000266) expansion-rom-version: bus-info: 0000:03:00.0 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: no supports-priv-flags: yes tx_h-yamashita@R730n10:~/dpdk-next-net$ ethtool -i enp4s0f0 driver: mlx5_core version: 4.7-1.0.0 firmware-version: 16.25.6000 (MT_0000000012) expansion-rom-version: bus-info: 0000:04:00.0 supports-statistics: yes supports-test: yes supports-eeprom-access: no supports-register-dump: no supports-priv-flags: yes If you needs more info from my side, please let me know. BR, Hideyuki Yamashita NTT TechnoCross > Hi, Hideyuki > > > -----Original Message----- > > From: Hideyuki Yamashita <yamashita.hidey...@ntt-tx.co.jp> > > Sent: Monday, October 21, 2019 10:12 > > To: Hideyuki Yamashita <yamashita.hidey...@ntt-tx.co.jp> > > Cc: Slava Ovsiienko <viachesl...@mellanox.com>; Moti Haimovsky > > <mo...@mellanox.com>; dev@dpdk.org > > Subject: Re: [dpdk-dev] [PATCH 0/7] net/mlx5: support for flow action on > > VLAN header > > > > Dear Slava, Moti and all, > > > > Please let me know if you need more information. > > Partial answer is acceptable for me. > > > > Thanks in advaince! > > I'm sorry for delay, your issue is still in progress. > I've tested your rules on my standard configuration - these ones are rejected > by FW/SW, > not by DPDK code. Moti tested the flows on custom setup (I suppose > experimental FW/kernel). > AFAIK, VLAN feature was planned to GA with OFED 4.7.1, > please, let me check it (hope in few days, there are holidays still lasting > in IL). > > With best regards, Slava > > > > BR, > > HIdeyuki Yamashita > > NTT TechnoCross > > > > > Dear Slava and experts, > > > > > > Thanks for your answering me. > > > Baased on your answer, I tested using testpmd. > > > And about the outcome, I have several questions. > > > > > > > > > [1.Test environment] > > > OS:Ubuntu18.04 > > > NIC1:MCX4121A-ACAT 25G > > > NIC2:MCX516A-CCAT 100G > > > Repo:dpdk-next-net > > > > > > I checked that the following is shown in git log command. > > > 9f1e94469 net/mlx5: fix netlink rdma socket callback routine 50735012c > > > net/mlx5: support reading module EEPROM data > > > f53a5f917 net/mlx5: support modify VLAN ID on existing VLAN header > > > 9af8046a1 net/mlx5: support modify VLAN ID on new VLAN header > > > 43184603e net/mlx5: support modifying VLAN priority on VLAN header > > > 4f59ffbd8 net/mlx5: support push flow action on VLAN header b4bd8f5da > > > net/mlx5: support pop flow action on VLAN header 048e3e84c net/mlx5: > > > add VLAN push/pop DR commands to glue > > > > > > [2.Test result] > > > I tested the follwoing flows with testpmd included in dpdk-next-net. > > > > > > A.flow create 0 ingress pattern eth / vlan id is 100 / end actions > > > OF_POP_VLAN / end B.flow create 0 ingress pattern eth dst is > > > BB:BB:BB:BB:BB:BB / end actions OF_PUSH_VLAN ethertype 1000 / end > > > C.flow create 0 ingress pattern eth dst is BB:BB:BB:BB:BB:BB / end > > > actions OF_SET_VLAN_VID vlan_vid 200 / end D.flow create X ingress > > > pattern eth dst is BB:BB:BB:BB:BB:BB / end actions of_SET_VLAN_PCP > > > vlan_pcp 3 / end E.flow create 0 egress pattern eth src is > > > BB:BB:BB:BB:BB:BB / end actions OF_PUSH_VLAN ethertype 1000 / end > > > > > > A-D, resulted in "Caught error type 16 (specific action): cause: > > 0x7ffcc711db48, action not supported: Operation not supported". > > > E resulted in "Egress is not supported". > > > > > > [3. Quetions] > > > Q1. What is the appropriate flow to entag/detag VLAN using testpmd? > > > I think related commits are included so it "should" work and my guess is > > that my flow is somehow wrong. > > > Q2. Is it correct understanding that "egress" is not supported for mlx5 > > PMD? > > > Q3. If yes, is it possible to entag VLAN tag to the outgoing packet from > > physical NIC by using rte_flow? > > > > > > BR, > > > Hideyuki Yamashita > > > NTT TechnoCross > > > > > > > > > > > -----Original Message----- > > > > > From: Hideyuki Yamashita <yamashita.hidey...@ntt-tx.co.jp> > > > > > Sent: Friday, October 4, 2019 13:35 > > > > > To: Hideyuki Yamashita <yamashita.hidey...@ntt-tx.co.jp> > > > > > Cc: Moti Haimovsky <mo...@mellanox.com>; Slava Ovsiienko > > > > > <viachesl...@mellanox.com>; dev@dpdk.org > > > > > Subject: Re: [dpdk-dev] [PATCH 0/7] net/mlx5: support for flow > > > > > action on VLAN header > > > > > > > > > > Can somebody (Mellanox guys?) help me out? > > > > > > > > Hi, Hideyuki > > > > > > > > I'm sorry, there are long holidays in IL, so let me try to answer. > > > > > > > > > > > > > > > Hello Moti, > > > > > > > > > > > > I have some questions on the patch. > > > > > > Just want to know how to use it. > > > > > > > > > > > > Q1. Is it correct understanding that the patch will be reflected > > > > > > in > > > > > > 19.11 if it is approved? > > > > > > > > Yes, it is merged and should be reflected. > > > > > > > > > > > > > > > > Q2.Which action should I specify when I want to insert VLAN tag > > > > > > to non-VLAN frame? > > > > > > > > > > > > OF_PUSH_VLAN and OF_SET_VLAN_VID and OF_SET_VLAN_PCP ? > > > > > > > > All of them, OF_PUSH_VLAN inserts the VLAN header, OF_SET_VLAN_VID > > > > and OF_SET_VLAN_PCP fill the fields with appropriate values. > > > > > > > > > > > > > > > > Q3. Is it possible to detag VLAN when it receives VLAN tagged > > > > > > frame from outside of the host? > > > > Do you mean some complex configuration with multiple VMs and > > engaged > > > > E-Switch feature? Anyway, there are multiple ways to strip (untag) VLAN > > header: > > > > - with E-Switch rules (including match on specified port) > > > > - with local port rules > > > > - stripping VLAN in Rx queue > > > > > > > > > > > > > > > > Q4. Is it possible to entag VLAN to non-VLAN frame when it sends > > > > > > packet to outside of host? > > > > Yes. > > > > > > > > > > > > > > > > Q5.Are there any restriction to conbime other ACTIONS like QUEUE? > > > > Should no be. Action QUEUE is on Rx NIC namespace, VLAN POP is > > supported there. > > > > > > > > > > > > > > > > Q6. Is it possible to apply rte_flow actions for specified tx > > > > > > queue of physical NIC? > > > > > > (e.g. VM connect with PHY:0 using tx queue index:1, I want to > > > > > > entag VLAN 101 to the traffic from VM to PHY:0 is it possible?) > > > > Directly - no, there is no item to match with specific Tx queue. > > > > > > > > If setting VLAN on specific Tx queue is desired we have two options: > > > > > > > > - engage Tx offload DEV_TX_OFFLOAD_VLAN_INSERT, and provide VLAN > > > > with each packet being transferred to tx_burst > > > > > > > > - engage DEV_TX_OFFLOAD_MATCH_METADATA feature, and set > > specific > > > > metadata for all packets on specific queue. Then the rules matching > > > > with this metadata may be inserted. > > > > > > > > [snip] > > > > > > > > With best regards, Slava > > > > > > >