All of lore.kernel.org
 help / color / mirror / Atom feed
From: Slava Ovsiienko <viacheslavo@mellanox.com>
To: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
Cc: Moti Haimovsky <motih@mellanox.com>, "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH 0/7] net/mlx5: support for flow action on	VLAN header
Date: Tue, 29 Oct 2019 05:45:23 +0000	[thread overview]
Message-ID: <AM4PR05MB3265AA58F53F71B61F4EC6ACD2610@AM4PR05MB3265.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <20191025134838.66ED.17218CA3@ntt-tx.co.jp_1>

Hi, Hideyuki.

Thanks for providing extra information. 

We rechecked the VLAN actions support in OFED 4.7.1, it should be supported.
There are some limitations:
- VLAN pop is supported on ingress direction only
- VLAN push is supported on egress direction only
- not supported in group 0 (this is root table, has some limitations)
 we should insert into group 0 flow with jump to group 1, and then insert
the rule with VLAN actions to group 1

I tried this flow (on my setup OFED 4.7.1.0.0.2):

flow create 0 ingress group 1 priority 0 pattern eth dst is 00:16:3e:2e:7b:6a / vlan vid is 1480 / end actions of_pop_vlan / queue index 0 / end
It was created successfully.

With best regards, Slava

> -----Original Message-----
> From: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> Sent: Friday, October 25, 2019 7:49
> To: Slava Ovsiienko <viacheslavo@mellanox.com>
> Cc: Moti Haimovsky <motih@mellanox.com>; dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 0/7] net/mlx5: support for flow action on
> VLAN header
> 
> 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.hideyuki@ntt-tx.co.jp>
> > > Sent: Monday, October 21, 2019 10:12
> > > To: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> > > Cc: Slava Ovsiienko <viacheslavo@mellanox.com>; Moti Haimovsky
> > > <motih@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.hideyuki@ntt-tx.co.jp>
> > > > > > Sent: Friday, October 4, 2019 13:35
> > > > > > To: Hideyuki Yamashita <yamashita.hideyuki@ntt-tx.co.jp>
> > > > > > Cc: Moti Haimovsky <motih@mellanox.com>; Slava Ovsiienko
> > > > > > <viacheslavo@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
> > > >
> > >
> > >
> 


  reply	other threads:[~2019-10-29  5:45 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-16 15:20 [dpdk-dev] [RFC] net/mlx5: support for flow action on VLAN header Moti Haimovsky
2019-08-06  8:24 ` [dpdk-dev] [PATCH 0/7] " Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 1/7] net/mlx5: support for an action search in a list Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 2/7] net/mlx5: add VLAN push/pop DR commands to glue Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 3/7] net/mlx5: support pop flow action on VLAN header Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 4/7] net/mlx5: support push " Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 5/7] net/mlx5: support modify VLAN priority on VLAN hdr Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 6/7] net/mlx5: supp modify VLAN ID on new VLAN header Moti Haimovsky
2019-08-06  8:24   ` [dpdk-dev] [PATCH 7/7] net/mlx5: supp modify VLAN ID on existing VLAN hdr Moti Haimovsky
2019-09-01 10:40   ` [dpdk-dev] [PATCH v2 0/7] net/mlx5: support for flow action on VLAN header Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 1/7] net/mlx5: support for an action search in a list Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 2/7] net/mlx5: add VLAN push/pop DR commands to glue Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 3/7] net/mlx5: support pop flow action on VLAN header Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 4/7] net/mlx5: support push " Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 5/7] net/mlx5: support modify VLAN priority on VLAN hdr Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 6/7] net/mlx5: supp modify VLAN ID on new VLAN header Moti Haimovsky
2019-09-01 10:40     ` [dpdk-dev] [PATCH v2 7/7] net/mlx5: supp modify VLAN ID on existing VLAN hdr Moti Haimovsky
2019-09-02 15:00     ` [dpdk-dev] [PATCH v3 0/7] net/mlx5: support for flow action on VLAN header Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 1/7] net/mlx5: support for an action search in a list Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 2/7] net/mlx5: add VLAN push/pop DR commands to glue Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 3/7] net/mlx5: support pop flow action on VLAN header Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 4/7] net/mlx5: support push " Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 5/7] net/mlx5: support modify VLAN priority on VLAN hdr Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 6/7] net/mlx5: supp modify VLAN ID on new VLAN header Moti Haimovsky
2019-09-02 15:00       ` [dpdk-dev] [PATCH v3 7/7] net/mlx5: supp modify VLAN ID on existing VLAN hdr Moti Haimovsky
2019-09-03 15:13       ` [dpdk-dev] [PATCH v4 0/7] net/mlx5: support for flow action on VLAN header Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 1/7] net/mlx5: support for an action search in a list Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 2/7] net/mlx5: add VLAN push/pop DR commands to glue Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 3/7] net/mlx5: support pop flow action on VLAN header Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 4/7] net/mlx5: support push " Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 5/7] net/mlx5: support modify VLAN priority on VLAN hdr Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 6/7] net/mlx5: supp modify VLAN ID on new VLAN header Moti Haimovsky
2019-09-03 15:13         ` [dpdk-dev] [PATCH v4 7/7] net/mlx5: supp modify VLAN ID on existing VLAN hdr Moti Haimovsky
2019-09-09 15:56         ` [dpdk-dev] [PATCH v5 0/7] net/mlx5: support for flow action on VLAN header Moti Haimovsky
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 1/7] net/mlx5: support for an action search in a list Moti Haimovsky
2019-09-10  8:12             ` Slava Ovsiienko
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 2/7] net/mlx5: add VLAN push/pop DR commands to glue Moti Haimovsky
2019-09-10  8:12             ` Slava Ovsiienko
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 3/7] net/mlx5: support pop flow action on VLAN header Moti Haimovsky
2019-09-10  8:13             ` Slava Ovsiienko
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 4/7] net/mlx5: support push " Moti Haimovsky
2019-09-10 10:42             ` Slava Ovsiienko
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 5/7] net/mlx5: support modify VLAN priority on VLAN hdr Moti Haimovsky
2019-09-10  8:13             ` Slava Ovsiienko
2019-09-10  8:13             ` Slava Ovsiienko
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 6/7] net/mlx5: supp modify VLAN ID on new VLAN header Moti Haimovsky
2019-09-09 15:56           ` [dpdk-dev] [PATCH v5 7/7] net/mlx5: supp modify VLAN ID on existing VLAN hdr Moti Haimovsky
2019-09-10  8:13             ` Slava Ovsiienko
2019-09-10  6:10           ` [dpdk-dev] [PATCH v5 0/7] net/mlx5: support for flow action on VLAN header Slava Ovsiienko
2019-09-10 13:34           ` Raslan Darawsheh
2019-10-01 12:17   ` [dpdk-dev] [PATCH " Hideyuki Yamashita
2019-10-04 10:35     ` Hideyuki Yamashita
2019-10-04 10:51       ` Slava Ovsiienko
2019-10-18 10:55         ` Hideyuki Yamashita
2019-10-21  7:11           ` Hideyuki Yamashita
2019-10-21  7:29             ` Slava Ovsiienko
2019-10-25  4:48               ` Hideyuki Yamashita
2019-10-29  5:45                 ` Slava Ovsiienko [this message]
2019-10-30 10:04                   ` Hideyuki Yamashita
2019-10-30 10:08                     ` Slava Ovsiienko
2019-10-30 10:46                       ` Hideyuki Yamashita
2019-10-31  7:11                         ` Slava Ovsiienko
2019-10-31  9:51                           ` Hideyuki Yamashita
2019-10-31 10:36                             ` Slava Ovsiienko
2019-11-05 10:26                               ` Hideyuki Yamashita
2019-11-06 11:03                                 ` Hideyuki Yamashita
2019-11-06 16:35                                   ` Slava Ovsiienko
2019-11-07  4:46                                     ` Hideyuki Yamashita
2019-11-07  6:01                                       ` Slava Ovsiienko
2019-11-07 11:02                                         ` Hideyuki Yamashita
2019-11-14  5:01                                           ` Hideyuki Yamashita
2019-11-14  5:06                                             ` Hideyuki Yamashita
2019-11-15  7:16                                             ` Slava Ovsiienko
2019-11-18  6:11                                               ` Hideyuki Yamashita
2019-11-18 10:03                                                 ` Matan Azrad
2019-11-19 11:36                                                   ` Hideyuki Yamashita
2019-11-26  7:10                                                     ` Hideyuki Yamashita
2019-12-04  2:43                                                     ` Hideyuki Yamashita

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AM4PR05MB3265AA58F53F71B61F4EC6ACD2610@AM4PR05MB3265.eurprd05.prod.outlook.com \
    --to=viacheslavo@mellanox.com \
    --cc=dev@dpdk.org \
    --cc=motih@mellanox.com \
    --cc=yamashita.hideyuki@ntt-tx.co.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.