From: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
To: dev@dpdk.org
Cc: Kumar Sanghvi <kumaras@chelsio.com>,
Nirranjan Kirubaharan <nirranjan@chelsio.com>
Subject: Re: [PATCH 00/10] cxgbe: Add flow director support
Date: Mon, 22 Feb 2016 16:09:51 +0530 [thread overview]
Message-ID: <20160222103949.GA15637@chelsio.com> (raw)
In-Reply-To: <cover.1454408702.git.rahul.lakkireddy@chelsio.com>
Hi All,
On Wednesday, February 02/03/16, 2016 at 14:02:21 +0530, Rahul Lakkireddy wrote:
> This series of patches extend the flow director filter and add support
> for Chelsio T5 hardware filtering capabilities.
>
> Chelsio T5 supports carrying out filtering in hardware which supports 3
> actions to carry out on a packet which hit a filter viz.
>
> 1. Action Pass - Packets hitting a filter rule can be directed to a
> particular RXQ.
>
> 2. Action Drop - Packets hitting a filter rule are dropped in h/w.
>
> 3. Action Switch - Packets hitting a filter rule can be switched in h/w
> from one port to another, without involvement of host. Also, the
> action Switch also supports rewrite of src-mac/dst-mac headers as
> well as rewrite of vlan headers. It also supports rewrite of IP
> headers and thereby, supports NAT (Network Address Translation)
> in h/w.
>
> Also, each filter rule can optionally support specifying a mask value
> i.e. it's possible to create a filter rule for an entire subnet of IP
> addresses or a range of tcp/udp ports, etc.
>
> Patch 1 does the following:
> - Adds a new flow RTE_ETH_FLOW_RAW_PKT to allow specifying a generic
> flow.
> - Adds an additional generic array to rte_eth_fdir_flow to allow
> specifying generic flow input.
> - Adds an additional mask for the flow input to allow range of values
> to be matched in the flow input.
> - Adds a new behavior 'switch'.
> - Adds a generic array to hold behavior arguments that can be passed
> when a particular behavior is taken. For ex: in case of action
> 'switch', pass additional 4-tuple to allow rewriting src/dst ip and
> port addresses to support NAT'ing.
>
> RFC series of patches and discussion involving these enhancements to the
> flow director are available at [1].
>
> Patch 2 adds command line example app to test cxgbe flow director. Also
> add documentation for the example app.
>
> Patch 3 updates the cxgbe base to add support for packet filtering.
>
> Patch 4 adds control txq for communicating filter info to the firmware.
>
> Patches 5-7 add compressed local ip (CLIP) table, layer 2 table (L2T),
> and source mac table (SMT) definitions required for holding info
> for matching and executing various operations on matched filters.
>
> Patch 8 adds the LE-TCAM (maskfull) filter support.
>
> Patch 9 adds the HASH (maskless) filter support.
>
> Patch 10 adds and implements the flow director filter operations. Also
> add the documentation.
>
>
> [1] http://comments.gmane.org/gmane.comp.networking.dpdk.devel/29986
>
> Rahul Lakkireddy (10):
> ethdev: add a generic flow and new behavior switch to fdir
> examples/test-cxgbe-filters: add example to test cxgbe fdir support
> cxgbe: add skeleton to add support for T5 hardware filtering
> cxgbe: add control txq for communicating filtering info
> cxgbe: add compressed local IP table for matching IPv6 addresses
> cxgbe: add layer 2 table for switch action filter
> cxgbe: add source mac table for switch action filter
> cxgbe: add LE-TCAM filtering support
> cxgbe: add HASH filtering support
> cxgbe: add flow director support and update documentation
>
> MAINTAINERS | 2 +
> doc/guides/nics/cxgbe.rst | 166 ++
> doc/guides/rel_notes/release_2_3.rst | 10 +
> doc/guides/sample_app_ug/index.rst | 1 +
> doc/guides/sample_app_ug/test_cxgbe_filters.rst | 694 +++++++++
> drivers/net/cxgbe/Makefile | 6 +
> drivers/net/cxgbe/base/adapter.h | 110 ++
> drivers/net/cxgbe/base/common.h | 11 +
> drivers/net/cxgbe/base/t4_hw.c | 28 +
> drivers/net/cxgbe/base/t4_msg.h | 324 ++++
> drivers/net/cxgbe/base/t4_regs.h | 9 +
> drivers/net/cxgbe/base/t4_regs_values.h | 25 +
> drivers/net/cxgbe/base/t4_tcb.h | 95 ++
> drivers/net/cxgbe/base/t4fw_interface.h | 272 ++++
> drivers/net/cxgbe/clip_tbl.c | 220 +++
> drivers/net/cxgbe/clip_tbl.h | 59 +
> drivers/net/cxgbe/cxgbe.h | 4 +
> drivers/net/cxgbe/cxgbe_compat.h | 12 +
> drivers/net/cxgbe/cxgbe_ethdev.c | 21 +
> drivers/net/cxgbe/cxgbe_fdir.c | 715 +++++++++
> drivers/net/cxgbe/cxgbe_fdir.h | 108 ++
> drivers/net/cxgbe/cxgbe_filter.c | 1614 ++++++++++++++++++++
> drivers/net/cxgbe/cxgbe_filter.h | 260 ++++
> drivers/net/cxgbe/cxgbe_main.c | 395 ++++-
> drivers/net/cxgbe/cxgbe_ofld.h | 126 ++
> drivers/net/cxgbe/l2t.c | 261 ++++
> drivers/net/cxgbe/l2t.h | 87 ++
> drivers/net/cxgbe/sge.c | 202 ++-
> drivers/net/cxgbe/smt.c | 275 ++++
> drivers/net/cxgbe/smt.h | 76 +
> examples/Makefile | 1 +
> examples/test-cxgbe-filters/Makefile | 63 +
> examples/test-cxgbe-filters/commands.c | 429 ++++++
> examples/test-cxgbe-filters/commands.h | 40 +
> examples/test-cxgbe-filters/config.c | 79 +
> examples/test-cxgbe-filters/cxgbe/cxgbe_commands.c | 554 +++++++
> examples/test-cxgbe-filters/cxgbe/cxgbe_fdir.h | 79 +
> examples/test-cxgbe-filters/init.c | 201 +++
> examples/test-cxgbe-filters/main.c | 79 +
> examples/test-cxgbe-filters/main.h | 77 +
> examples/test-cxgbe-filters/runtime.c | 74 +
> lib/librte_ether/rte_eth_ctrl.h | 15 +-
> 42 files changed, 7874 insertions(+), 5 deletions(-)
> create mode 100644 doc/guides/sample_app_ug/test_cxgbe_filters.rst
> create mode 100644 drivers/net/cxgbe/base/t4_tcb.h
> create mode 100644 drivers/net/cxgbe/clip_tbl.c
> create mode 100644 drivers/net/cxgbe/clip_tbl.h
> create mode 100644 drivers/net/cxgbe/cxgbe_fdir.c
> create mode 100644 drivers/net/cxgbe/cxgbe_fdir.h
> create mode 100644 drivers/net/cxgbe/cxgbe_filter.c
> create mode 100644 drivers/net/cxgbe/cxgbe_filter.h
> create mode 100644 drivers/net/cxgbe/cxgbe_ofld.h
> create mode 100644 drivers/net/cxgbe/l2t.c
> create mode 100644 drivers/net/cxgbe/l2t.h
> create mode 100644 drivers/net/cxgbe/smt.c
> create mode 100644 drivers/net/cxgbe/smt.h
> create mode 100644 examples/test-cxgbe-filters/Makefile
> create mode 100644 examples/test-cxgbe-filters/commands.c
> create mode 100644 examples/test-cxgbe-filters/commands.h
> create mode 100644 examples/test-cxgbe-filters/config.c
> create mode 100644 examples/test-cxgbe-filters/cxgbe/cxgbe_commands.c
> create mode 100644 examples/test-cxgbe-filters/cxgbe/cxgbe_fdir.h
> create mode 100644 examples/test-cxgbe-filters/init.c
> create mode 100644 examples/test-cxgbe-filters/main.c
> create mode 100644 examples/test-cxgbe-filters/main.h
> create mode 100644 examples/test-cxgbe-filters/runtime.c
>
> --
> 2.5.3
>
Just a gentle reminder if there is any review comment on this series?
Thanks,
Rahul
next prev parent reply other threads:[~2016-02-22 10:40 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-03 8:32 [PATCH 00/10] cxgbe: Add flow director support Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 01/10] ethdev: add a generic flow and new behavior switch to fdir Rahul Lakkireddy
2016-02-24 14:43 ` Bruce Richardson
2016-02-24 15:02 ` Thomas Monjalon
2016-02-24 18:40 ` Rahul Lakkireddy
2016-02-24 22:17 ` Thomas Monjalon
2016-02-25 9:33 ` Rahul Lakkireddy
2016-02-25 18:24 ` Thomas Monjalon
2016-02-26 1:17 ` Wu, Jingjing
2016-03-03 15:03 ` Olga Shern
2016-07-20 10:45 ` Thomas Monjalon
2016-02-25 3:26 ` Wu, Jingjing
2016-02-25 9:11 ` Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 02/10] examples/test-cxgbe-filters: add example to test cxgbe fdir support Rahul Lakkireddy
2016-02-24 14:40 ` Bruce Richardson
2016-02-24 18:35 ` Rahul Lakkireddy
2016-02-25 13:48 ` Bruce Richardson
2016-02-03 8:32 ` [PATCH 03/10] cxgbe: add skeleton to add support for T5 hardware filtering Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 04/10] cxgbe: add control txq for communicating filtering info Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 05/10] cxgbe: add compressed local IP table for matching IPv6 addresses Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 06/10] cxgbe: add layer 2 table for switch action filter Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 07/10] cxgbe: add source mac " Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 08/10] cxgbe: add LE-TCAM filtering support Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 09/10] cxgbe: add HASH " Rahul Lakkireddy
2016-02-03 8:32 ` [PATCH 10/10] cxgbe: add flow director support and update documentation Rahul Lakkireddy
2016-02-22 10:39 ` Rahul Lakkireddy [this message]
2016-03-22 13:43 ` [PATCH 00/10] cxgbe: Add flow director support Bruce Richardson
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=20160222103949.GA15637@chelsio.com \
--to=rahul.lakkireddy@chelsio.com \
--cc=dev@dpdk.org \
--cc=kumaras@chelsio.com \
--cc=nirranjan@chelsio.com \
/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.