mbox series

[v3,00/13] enhancements to host based flow table management

Message ID 20210911153041.28510-1-venkatkumar.duvvuru@broadcom.com (mailing list archive)
Headers show
Series enhancements to host based flow table management | expand

Message

Venkat Duvvuru Sept. 11, 2021, 3:30 p.m. UTC
This patch set adds support for new offload features/enhancments for
Thor adapters like VF representor support, new flow matches/actions
& dynamic SRAM manager support.

v2 ==> v3
=========
* Fixed compilation issue.

Farah Smith (4):
  net/bnxt: tf core index table updates
  net/bnxt: add Thor SRAM mgr model
  net/bnxt: tf core SRAM Manager
  net/bnxt: sram manager shared session

Jay Ding (1):
  net/bnxt: add flow meter drop counter support

Kishore Padmanabha (6):
  net/bnxt: add flow templates support for Thor
  net/bnxt: add support for tunnel offloads
  net/bnxt: add support for dynamic encap action
  net/bnxt: add wild card TCAM byte order for Thor
  net/bnxt: add flow templates for Thor
  net/bnxt: add enhancements to TF ULP

Peter Spreadborough (1):
  net/bnxt: enable dpool allocator

Randy Schacher (1):
  net/bnxt: dynamically allocate space for EM defrag function

 drivers/net/bnxt/tf_core/cfa_resource_types.h |     5 +-
 drivers/net/bnxt/tf_core/dpool.c              |    38 +-
 drivers/net/bnxt/tf_core/ll.c                 |     3 +
 drivers/net/bnxt/tf_core/ll.h                 |    50 +-
 drivers/net/bnxt/tf_core/meson.build          |     2 +
 drivers/net/bnxt/tf_core/tf_core.c            |   169 +-
 drivers/net/bnxt/tf_core/tf_core.h            |   159 +-
 drivers/net/bnxt/tf_core/tf_device.c          |    40 +-
 drivers/net/bnxt/tf_core/tf_device.h          |   137 +-
 drivers/net/bnxt/tf_core/tf_device_p4.c       |    77 +-
 drivers/net/bnxt/tf_core/tf_device_p4.h       |    50 +-
 drivers/net/bnxt/tf_core/tf_device_p58.c      |   112 +-
 drivers/net/bnxt/tf_core/tf_device_p58.h      |    70 +-
 drivers/net/bnxt/tf_core/tf_em.h              |    10 -
 drivers/net/bnxt/tf_core/tf_em_common.c       |     4 +
 .../net/bnxt/tf_core/tf_em_hash_internal.c    |    34 -
 drivers/net/bnxt/tf_core/tf_em_internal.c     |   185 +-
 drivers/net/bnxt/tf_core/tf_msg.c             |     2 +-
 drivers/net/bnxt/tf_core/tf_rm.c              |   180 +-
 drivers/net/bnxt/tf_core/tf_rm.h              |    62 +-
 drivers/net/bnxt/tf_core/tf_session.c         |    56 +
 drivers/net/bnxt/tf_core/tf_session.h         |    58 +-
 drivers/net/bnxt/tf_core/tf_sram_mgr.c        |   971 +
 drivers/net/bnxt/tf_core/tf_sram_mgr.h        |   317 +
 drivers/net/bnxt/tf_core/tf_tbl.c             |   259 +-
 drivers/net/bnxt/tf_core/tf_tbl.h             |    87 +-
 drivers/net/bnxt/tf_core/tf_tbl_sram.c        |   747 +
 drivers/net/bnxt/tf_core/tf_tbl_sram.h        |   154 +
 drivers/net/bnxt/tf_core/tf_tcam.c            |    16 +-
 drivers/net/bnxt/tf_core/tf_tcam.h            |     7 +
 drivers/net/bnxt/tf_core/tf_tcam_shared.c     |    28 +-
 drivers/net/bnxt/tf_core/tf_util.c            |    12 +
 drivers/net/bnxt/tf_ulp/bnxt_tf_common.h      |    10 +-
 drivers/net/bnxt/tf_ulp/bnxt_ulp.c            |    52 +-
 drivers/net/bnxt/tf_ulp/bnxt_ulp.h            |    20 +-
 drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c       |   226 +-
 .../bnxt/tf_ulp/generic_templates/meson.build |    17 +-
 .../generic_templates/ulp_template_db_act.c   |     2 +-
 .../generic_templates/ulp_template_db_class.c | 12109 +++-
 .../generic_templates/ulp_template_db_enum.h  |   618 +-
 .../generic_templates/ulp_template_db_field.h |   767 +-
 .../generic_templates/ulp_template_db_tbl.c   |  2757 +-
 .../ulp_template_db_thor_act.c                |  5079 +-
 .../ulp_template_db_thor_class.c              | 45573 ++++++++++++++--
 .../ulp_template_db_wh_plus_act.c             |  1700 +-
 .../ulp_template_db_wh_plus_class.c           |  8329 ++-
 drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c          |    48 +-
 drivers/net/bnxt/tf_ulp/ulp_fc_mgr.h          |     8 +-
 drivers/net/bnxt/tf_ulp/ulp_flow_db.c         |   678 +-
 drivers/net/bnxt/tf_ulp/ulp_flow_db.h         |    68 +-
 drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c         |     9 +-
 drivers/net/bnxt/tf_ulp/ulp_mapper.c          |   448 +-
 drivers/net/bnxt/tf_ulp/ulp_mapper.h          |    10 +-
 drivers/net/bnxt/tf_ulp/ulp_matcher.c         |    13 +
 drivers/net/bnxt/tf_ulp/ulp_port_db.c         |    15 +-
 drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c |    31 +
 drivers/net/bnxt/tf_ulp/ulp_rte_parser.c      |   663 +-
 drivers/net/bnxt/tf_ulp/ulp_rte_parser.h      |    12 +-
 drivers/net/bnxt/tf_ulp/ulp_template_struct.h |    32 +-
 drivers/net/bnxt/tf_ulp/ulp_tun.c             |   521 +-
 drivers/net/bnxt/tf_ulp/ulp_tun.h             |    89 +-
 drivers/net/bnxt/tf_ulp/ulp_utils.c           |    71 +-
 drivers/net/bnxt/tf_ulp/ulp_utils.h           |    27 +-
 meson_options.txt                             |     2 +
 64 files changed, 71149 insertions(+), 12956 deletions(-)
 create mode 100644 drivers/net/bnxt/tf_core/tf_sram_mgr.c
 create mode 100644 drivers/net/bnxt/tf_core/tf_sram_mgr.h
 create mode 100644 drivers/net/bnxt/tf_core/tf_tbl_sram.c
 create mode 100644 drivers/net/bnxt/tf_core/tf_tbl_sram.h

Comments

Ajit Khaparde Sept. 16, 2021, 3:25 a.m. UTC | #1
On Sat, Sep 11, 2021 at 8:30 AM Venkat Duvvuru
<venkatkumar.duvvuru@broadcom.com> wrote:
>
> This patch set adds support for new offload features/enhancments for
> Thor adapters like VF representor support, new flow matches/actions
> & dynamic SRAM manager support.
>
> v2 ==> v3
> =========
> * Fixed compilation issue.

Patchset applied to dpdk-next-net-brcm. Thanks

>
> Farah Smith (4):
>   net/bnxt: tf core index table updates
>   net/bnxt: add Thor SRAM mgr model
>   net/bnxt: tf core SRAM Manager
>   net/bnxt: sram manager shared session
>
> Jay Ding (1):
>   net/bnxt: add flow meter drop counter support
>
> Kishore Padmanabha (6):
>   net/bnxt: add flow templates support for Thor
>   net/bnxt: add support for tunnel offloads
>   net/bnxt: add support for dynamic encap action
>   net/bnxt: add wild card TCAM byte order for Thor
>   net/bnxt: add flow templates for Thor
>   net/bnxt: add enhancements to TF ULP
>
> Peter Spreadborough (1):
>   net/bnxt: enable dpool allocator
>
> Randy Schacher (1):
>   net/bnxt: dynamically allocate space for EM defrag function
>
>  drivers/net/bnxt/tf_core/cfa_resource_types.h |     5 +-
>  drivers/net/bnxt/tf_core/dpool.c              |    38 +-
>  drivers/net/bnxt/tf_core/ll.c                 |     3 +
>  drivers/net/bnxt/tf_core/ll.h                 |    50 +-
>  drivers/net/bnxt/tf_core/meson.build          |     2 +
>  drivers/net/bnxt/tf_core/tf_core.c            |   169 +-
>  drivers/net/bnxt/tf_core/tf_core.h            |   159 +-
>  drivers/net/bnxt/tf_core/tf_device.c          |    40 +-
>  drivers/net/bnxt/tf_core/tf_device.h          |   137 +-
>  drivers/net/bnxt/tf_core/tf_device_p4.c       |    77 +-
>  drivers/net/bnxt/tf_core/tf_device_p4.h       |    50 +-
>  drivers/net/bnxt/tf_core/tf_device_p58.c      |   112 +-
>  drivers/net/bnxt/tf_core/tf_device_p58.h      |    70 +-
>  drivers/net/bnxt/tf_core/tf_em.h              |    10 -
>  drivers/net/bnxt/tf_core/tf_em_common.c       |     4 +
>  .../net/bnxt/tf_core/tf_em_hash_internal.c    |    34 -
>  drivers/net/bnxt/tf_core/tf_em_internal.c     |   185 +-
>  drivers/net/bnxt/tf_core/tf_msg.c             |     2 +-
>  drivers/net/bnxt/tf_core/tf_rm.c              |   180 +-
>  drivers/net/bnxt/tf_core/tf_rm.h              |    62 +-
>  drivers/net/bnxt/tf_core/tf_session.c         |    56 +
>  drivers/net/bnxt/tf_core/tf_session.h         |    58 +-
>  drivers/net/bnxt/tf_core/tf_sram_mgr.c        |   971 +
>  drivers/net/bnxt/tf_core/tf_sram_mgr.h        |   317 +
>  drivers/net/bnxt/tf_core/tf_tbl.c             |   259 +-
>  drivers/net/bnxt/tf_core/tf_tbl.h             |    87 +-
>  drivers/net/bnxt/tf_core/tf_tbl_sram.c        |   747 +
>  drivers/net/bnxt/tf_core/tf_tbl_sram.h        |   154 +
>  drivers/net/bnxt/tf_core/tf_tcam.c            |    16 +-
>  drivers/net/bnxt/tf_core/tf_tcam.h            |     7 +
>  drivers/net/bnxt/tf_core/tf_tcam_shared.c     |    28 +-
>  drivers/net/bnxt/tf_core/tf_util.c            |    12 +
>  drivers/net/bnxt/tf_ulp/bnxt_tf_common.h      |    10 +-
>  drivers/net/bnxt/tf_ulp/bnxt_ulp.c            |    52 +-
>  drivers/net/bnxt/tf_ulp/bnxt_ulp.h            |    20 +-
>  drivers/net/bnxt/tf_ulp/bnxt_ulp_flow.c       |   226 +-
>  .../bnxt/tf_ulp/generic_templates/meson.build |    17 +-
>  .../generic_templates/ulp_template_db_act.c   |     2 +-
>  .../generic_templates/ulp_template_db_class.c | 12109 +++-
>  .../generic_templates/ulp_template_db_enum.h  |   618 +-
>  .../generic_templates/ulp_template_db_field.h |   767 +-
>  .../generic_templates/ulp_template_db_tbl.c   |  2757 +-
>  .../ulp_template_db_thor_act.c                |  5079 +-
>  .../ulp_template_db_thor_class.c              | 45573 ++++++++++++++--
>  .../ulp_template_db_wh_plus_act.c             |  1700 +-
>  .../ulp_template_db_wh_plus_class.c           |  8329 ++-
>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c          |    48 +-
>  drivers/net/bnxt/tf_ulp/ulp_fc_mgr.h          |     8 +-
>  drivers/net/bnxt/tf_ulp/ulp_flow_db.c         |   678 +-
>  drivers/net/bnxt/tf_ulp/ulp_flow_db.h         |    68 +-
>  drivers/net/bnxt/tf_ulp/ulp_gen_tbl.c         |     9 +-
>  drivers/net/bnxt/tf_ulp/ulp_mapper.c          |   448 +-
>  drivers/net/bnxt/tf_ulp/ulp_mapper.h          |    10 +-
>  drivers/net/bnxt/tf_ulp/ulp_matcher.c         |    13 +
>  drivers/net/bnxt/tf_ulp/ulp_port_db.c         |    15 +-
>  drivers/net/bnxt/tf_ulp/ulp_rte_handler_tbl.c |    31 +
>  drivers/net/bnxt/tf_ulp/ulp_rte_parser.c      |   663 +-
>  drivers/net/bnxt/tf_ulp/ulp_rte_parser.h      |    12 +-
>  drivers/net/bnxt/tf_ulp/ulp_template_struct.h |    32 +-
>  drivers/net/bnxt/tf_ulp/ulp_tun.c             |   521 +-
>  drivers/net/bnxt/tf_ulp/ulp_tun.h             |    89 +-
>  drivers/net/bnxt/tf_ulp/ulp_utils.c           |    71 +-
>  drivers/net/bnxt/tf_ulp/ulp_utils.h           |    27 +-
>  meson_options.txt                             |     2 +
>  64 files changed, 71149 insertions(+), 12956 deletions(-)
>  create mode 100644 drivers/net/bnxt/tf_core/tf_sram_mgr.c
>  create mode 100644 drivers/net/bnxt/tf_core/tf_sram_mgr.h
>  create mode 100644 drivers/net/bnxt/tf_core/tf_tbl_sram.c
>  create mode 100644 drivers/net/bnxt/tf_core/tf_tbl_sram.h
>
> --
> 2.17.1
>
Ferruh Yigit Sept. 16, 2021, 1:26 p.m. UTC | #2
On 9/11/2021 4:30 PM, Venkat Duvvuru wrote:
> This patch set adds support for new offload features/enhancments for
> Thor adapters like VF representor support, new flow matches/actions
> & dynamic SRAM manager support.
> 
> v2 ==> v3
> =========
> * Fixed compilation issue.
> 
> Farah Smith (4):
>   net/bnxt: tf core index table updates
>   net/bnxt: add Thor SRAM mgr model
>   net/bnxt: tf core SRAM Manager
>   net/bnxt: sram manager shared session
> 
> Jay Ding (1):
>   net/bnxt: add flow meter drop counter support
> 
> Kishore Padmanabha (6):
>   net/bnxt: add flow templates support for Thor
>   net/bnxt: add support for tunnel offloads
>   net/bnxt: add support for dynamic encap action
>   net/bnxt: add wild card TCAM byte order for Thor
>   net/bnxt: add flow templates for Thor
>   net/bnxt: add enhancements to TF ULP
> 
> Peter Spreadborough (1):
>   net/bnxt: enable dpool allocator
> 
> Randy Schacher (1):
>   net/bnxt: dynamically allocate space for EM defrag function
> 

Hi Ajit,

There are a few checkpatch errors reported, can you please check them?

Also CI seems failed to apply the patch and not run, indeed patch is merged in
the correct tree, but seems on top of wrong commit [1].


Aaron, Lab,

Can you please check if there is an issue with the tree synchronization. (This
is previously reported for eventdev too, perhaps there may be a generic problem.)

Can you please trigger the testing of this set after repo updated?


[1]
dpdk-next-net-brcm (175af25734f295874e31b33ccd0879e69fd152a9)
Brandon Lo Sept. 16, 2021, 2:17 p.m. UTC | #3
On Thu, Sep 16, 2021 at 9:26 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> On 9/11/2021 4:30 PM, Venkat Duvvuru wrote:
> > This patch set adds support for new offload features/enhancments for
> > Thor adapters like VF representor support, new flow matches/actions
> > & dynamic SRAM manager support.
> >
> > v2 ==> v3
> > =========
> > * Fixed compilation issue.
> >
> > Farah Smith (4):
> >   net/bnxt: tf core index table updates
> >   net/bnxt: add Thor SRAM mgr model
> >   net/bnxt: tf core SRAM Manager
> >   net/bnxt: sram manager shared session
> >
> > Jay Ding (1):
> >   net/bnxt: add flow meter drop counter support
> >
> > Kishore Padmanabha (6):
> >   net/bnxt: add flow templates support for Thor
> >   net/bnxt: add support for tunnel offloads
> >   net/bnxt: add support for dynamic encap action
> >   net/bnxt: add wild card TCAM byte order for Thor
> >   net/bnxt: add flow templates for Thor
> >   net/bnxt: add enhancements to TF ULP
> >
> > Peter Spreadborough (1):
> >   net/bnxt: enable dpool allocator
> >
> > Randy Schacher (1):
> >   net/bnxt: dynamically allocate space for EM defrag function
> >
>
> Hi Ajit,
>
> There are a few checkpatch errors reported, can you please check them?
>
> Also CI seems failed to apply the patch and not run, indeed patch is merged in
> the correct tree, but seems on top of wrong commit [1].
>
>
> Aaron, Lab,
>
> Can you please check if there is an issue with the tree synchronization. (This
> is previously reported for eventdev too, perhaps there may be a generic problem.)
>
> Can you please trigger the testing of this set after repo updated?
>
>
> [1]
> dpdk-next-net-brcm (175af25734f295874e31b33ccd0879e69fd152a9)

Hi all,

This is related to a current migration that is in process within the
lab. I have found the root cause for this issue, and I am working on a
solution to fix this tree synchronization issue. Once I have a stable
solution, I will rerun the patches that failed to apply.

Thanks,
Brandon
Ajit Khaparde Sept. 16, 2021, 4:18 p.m. UTC | #4
On Thu, Sep 16, 2021 at 6:26 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> On 9/11/2021 4:30 PM, Venkat Duvvuru wrote:
> > This patch set adds support for new offload features/enhancments for
> > Thor adapters like VF representor support, new flow matches/actions
> > & dynamic SRAM manager support.
> >
> > v2 ==> v3
> > =========
> > * Fixed compilation issue.
> >
> > Farah Smith (4):
> >   net/bnxt: tf core index table updates
> >   net/bnxt: add Thor SRAM mgr model
> >   net/bnxt: tf core SRAM Manager
> >   net/bnxt: sram manager shared session
> >
> > Jay Ding (1):
> >   net/bnxt: add flow meter drop counter support
> >
> > Kishore Padmanabha (6):
> >   net/bnxt: add flow templates support for Thor
> >   net/bnxt: add support for tunnel offloads
> >   net/bnxt: add support for dynamic encap action
> >   net/bnxt: add wild card TCAM byte order for Thor
> >   net/bnxt: add flow templates for Thor
> >   net/bnxt: add enhancements to TF ULP
> >
> > Peter Spreadborough (1):
> >   net/bnxt: enable dpool allocator
> >
> > Randy Schacher (1):
> >   net/bnxt: dynamically allocate space for EM defrag function
> >
>
> Hi Ajit,
>
> There are a few checkpatch errors reported, can you please check them?
I had taken care of them, but I forgot to mention it in my merge mail.
So the next spin of the patches should have those addressed.

>
> Also CI seems failed to apply the patch and not run, indeed patch is merged in
> the correct tree, but seems on top of wrong commit [1].
Looks like Brandon has root caused it.

Thanks
Ajit

>
>
> Aaron, Lab,
>
> Can you please check if there is an issue with the tree synchronization. (This
> is previously reported for eventdev too, perhaps there may be a generic problem.)
>
> Can you please trigger the testing of this set after repo updated?
>
>
> [1]
> dpdk-next-net-brcm (175af25734f295874e31b33ccd0879e69fd152a9)