public inbox for dev@dpdk.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Feifei Wang <wff_light@vip.163.com>
Cc: dev@dpdk.org, chenyi221 <chenyi221@huawei.com>
Subject: Re: [v6 0/7] hinic3 change for support new SPx NIC
Date: Sat, 21 Mar 2026 10:32:00 -0700	[thread overview]
Message-ID: <20260321103200.267c3610@phoenix.local> (raw)
In-Reply-To: <20260319135220.2390-1-wff_light@vip.163.com>

On Thu, 19 Mar 2026 21:52:06 +0800
Feifei Wang <wff_light@vip.163.com> wrote:

> From: chenyi221 <chenyi221@huawei.com>
> 
> Change hinic3 driver to support Huawei new SPx series NIC.
> 
> v2:
> --fix build issues
> 
> v3:
> --fix community review comments and err reports
> 
> v4:
> --fix rss type assignment error
> 
> v5:
> --fix community ubuntu-22.04-clang err
> 
> v6:
> --fix atomic compilation error
> 
> Feifei Wang (7):
>   net/hinic3: add support for new SPx series NIC
>   net/hinic3: add enhance cmdq support for new SPx series NIC
>   net/hinic3: use different callback func to split new/old cmdq
>     operations
>   net/hinic3: add fun init ops to support Compact CQE
>   net/hinic3: add rx ops to support Compact CQE
>   net/hinic3: add tx ops to support Compact CQE
>   net/hinic3: use different callback func to support htn fdir
> 
>  drivers/net/hinic3/base/hinic3_cmd.h          |  80 ++-
>  drivers/net/hinic3/base/hinic3_cmdq.c         | 370 ++++------
>  drivers/net/hinic3/base/hinic3_cmdq.h         | 112 ++-
>  drivers/net/hinic3/base/hinic3_cmdq_enhance.c | 111 +++
>  drivers/net/hinic3/base/hinic3_cmdq_enhance.h | 125 ++++
>  drivers/net/hinic3/base/hinic3_csr.h          |  18 +-
>  drivers/net/hinic3/base/hinic3_hw_comm.c      |  15 +-
>  drivers/net/hinic3/base/hinic3_hw_comm.h      |  31 +-
>  drivers/net/hinic3/base/hinic3_hwdev.c        |  13 +-
>  drivers/net/hinic3/base/hinic3_hwdev.h        |  18 +
>  drivers/net/hinic3/base/hinic3_hwif.c         |  10 +-
>  drivers/net/hinic3/base/hinic3_mgmt.c         |   5 +-
>  drivers/net/hinic3/base/hinic3_mgmt.h         |   2 +
>  drivers/net/hinic3/base/hinic3_nic_cfg.c      | 182 ++---
>  drivers/net/hinic3/base/hinic3_nic_cfg.h      |  98 ++-
>  drivers/net/hinic3/base/meson.build           |   1 +
>  drivers/net/hinic3/hinic3_ethdev.c            | 279 ++++++--
>  drivers/net/hinic3/hinic3_ethdev.h            | 120 ++--
>  drivers/net/hinic3/hinic3_fdir.c              | 657 +++++++++++++-----
>  drivers/net/hinic3/hinic3_fdir.h              | 361 ++++++++--
>  drivers/net/hinic3/hinic3_nic_io.c            | 525 ++++++--------
>  drivers/net/hinic3/hinic3_nic_io.h            | 163 ++++-
>  drivers/net/hinic3/hinic3_rx.c                | 267 +++++--
>  drivers/net/hinic3/hinic3_rx.h                | 182 ++++-
>  drivers/net/hinic3/hinic3_tx.c                | 456 ++++++------
>  drivers/net/hinic3/hinic3_tx.h                | 154 +++-
>  .../net/hinic3/htn_adapt/hinic3_htn_cmdq.c    | 167 +++++
>  .../net/hinic3/htn_adapt/hinic3_htn_cmdq.h    |  63 ++
>  drivers/net/hinic3/htn_adapt/meson.build      |   7 +
>  drivers/net/hinic3/meson.build                |   8 +-
>  .../net/hinic3/stn_adapt/hinic3_stn_cmdq.c    | 151 ++++
>  .../net/hinic3/stn_adapt/hinic3_stn_cmdq.h    |  46 ++
>  drivers/net/hinic3/stn_adapt/meson.build      |   7 +
>  33 files changed, 3362 insertions(+), 1442 deletions(-)
>  create mode 100644 drivers/net/hinic3/base/hinic3_cmdq_enhance.c
>  create mode 100644 drivers/net/hinic3/base/hinic3_cmdq_enhance.h
>  create mode 100644 drivers/net/hinic3/htn_adapt/hinic3_htn_cmdq.c
>  create mode 100644 drivers/net/hinic3/htn_adapt/hinic3_htn_cmdq.h
>  create mode 100644 drivers/net/hinic3/htn_adapt/meson.build
>  create mode 100644 drivers/net/hinic3/stn_adapt/hinic3_stn_cmdq.c
>  create mode 100644 drivers/net/hinic3/stn_adapt/hinic3_stn_cmdq.h
>  create mode 100644 drivers/net/hinic3/stn_adapt/meson.build
> 
> --
> 2.45.1.windows.1

Looks good, only minor feedback from AI to address.

---

The V6 series fixes most issues from the V2 review: the uppercase hex `0X0229` is corrected, `rte_smp_rmb()` is replaced with `rte_atomic_thread_fence(rte_memory_order_acquire)`, the `__atomic_load_n()` GCC built-in is gone, the `hinic3_memzone_free(ci_mz)` on NULL is removed, the error-path labels in `hinic3_func_init()` are now correctly ordered, the `cos_num_max` ternary logic is fixed, and the `HINIC3_CMDQ_BUF_SIZE` change is documented. Two issues remain:

---

Patch 3/7: net/hinic3: use different callback func to split new/old cmdq operations

The call sites use `hinic3_cmdq_get_stn_ops()` and
`hinic3_cmdq_get_htn_ops()` but the definitions in stn_adapt/
and htn_adapt/ are `hinic3_nic_cmdq_get_stn_ops()` and
`hinic3_nic_cmdq_get_htn_ops()`. The header declarations also
use the short names without `_nic_`. Patch 4 fixes the call
sites but each commit must compile independently. Please either
use consistent names from the start in patch 3 or squash the
fix into this patch.

Patch 7/7: net/hinic3: use different callback func to support htn fdir

The copy-paste bug in `hinic3_rss_hash_update()` was fixed but the
same bug persists in `hinic3_rss_conf_get()`. The else branch still
has:

    rss_type.ipv6_ext = 0;
    rss_type.ipv6_ext = 0;

The second line should be `rss_type.tcp_ipv6_ext = 0`.



  parent reply	other threads:[~2026-03-21 17:32 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-31 10:05 [PATCH 0/7] hinic3 change for support new SPx NIC Feifei Wang
2026-01-31 10:05 ` [PATCH 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-16 13:43   ` [V2 0/7] hinic3 change for support new SPx NIC Feifei Wang
2026-03-16 13:43     ` [V2 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-16 13:43     ` [V2 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-16 13:43     ` [V2 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-16 13:43     ` [V2 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-16 13:43     ` [V2 5/7] net/hinic3: add rx " Feifei Wang
2026-03-16 13:43     ` [V2 6/7] net/hinic3: add tx " Feifei Wang
2026-03-16 13:43     ` [V2 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-16 15:45     ` [V2 0/7] hinic3 change for support new SPx NIC Stephen Hemminger
2026-03-19  2:50       ` 回复: " wangfeifei (J)
2026-03-19 13:52     ` [v6 " Feifei Wang
2026-03-19 13:52       ` [V6 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-19 13:52       ` [V6 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-19 13:52       ` [V6 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-19 13:52       ` [V6 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-19 13:52       ` [V6 5/7] net/hinic3: add rx " Feifei Wang
2026-03-19 13:52       ` [V6 6/7] net/hinic3: add tx " Feifei Wang
2026-03-19 13:52       ` [V6 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-21 17:32       ` Stephen Hemminger [this message]
2026-03-22 16:32       ` [v6 0/7] hinic3 change for support new SPx NIC Stephen Hemminger
2026-03-23  8:04     ` [PATCH v7 " Feifei Wang
2026-03-23  8:04       ` [PATCH v7 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-23 19:51         ` Stephen Hemminger
2026-03-23  8:04       ` [PATCH v7 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-23  8:04       ` [PATCH v7 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-23  8:04       ` [PATCH v7 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-23  8:04       ` [PATCH v7 5/7] net/hinic3: add rx " Feifei Wang
2026-03-23  8:04       ` [PATCH v7 6/7] net/hinic3: add tx " Feifei Wang
2026-03-23  8:04       ` [PATCH v7 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-23 19:50         ` Stephen Hemminger
2026-03-24  1:19           ` 回复: " wangfeifei (J)
2026-03-24  1:55     ` [PATCH v8 0/7] hinic3 change for support new SPx NIC Feifei Wang
2026-03-24  1:55       ` [PATCH v8 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-24  1:55       ` [PATCH v8 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-24  1:55       ` [PATCH v8 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-24  1:55       ` [PATCH v8 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-24  1:55       ` [PATCH v8 5/7] net/hinic3: add rx " Feifei Wang
2026-03-24  1:55       ` [PATCH v8 6/7] net/hinic3: add tx " Feifei Wang
2026-03-24  1:55       ` [PATCH v8 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-24  3:27       ` [PATCH v8 0/7] hinic3 change for support new SPx NIC Stephen Hemminger
2026-03-24  3:31       ` Stephen Hemminger
2026-03-24 14:41       ` Stephen Hemminger
2026-03-24 14:42       ` Stephen Hemminger
2026-03-25  1:30         ` 回复: " wangfeifei (J)
2026-03-25 13:37         ` Thomas Monjalon
2026-03-25 14:02           ` Thomas Monjalon
2026-03-18  2:19   ` [v3 " Feifei Wang
2026-03-18  2:19     ` [V3 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-18  2:19     ` [V3 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-18  2:19     ` [V3 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-18  2:19     ` [V3 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-18  2:19     ` [V3 5/7] net/hinic3: add rx " Feifei Wang
2026-03-18  2:19     ` [V3 6/7] net/hinic3: add tx " Feifei Wang
2026-03-18  2:19     ` [V3 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-18  6:20   ` [v4 0/7] hinic3 change for support new SPx NIC Feifei Wang
2026-03-18  6:20     ` [V4 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-18  6:20     ` [V4 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-18  6:20     ` [V4 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-18  6:20     ` [V4 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-18  6:20     ` [V4 5/7] net/hinic3: add rx " Feifei Wang
2026-03-18  6:20     ` [V4 6/7] net/hinic3: add tx " Feifei Wang
2026-03-18  6:20     ` [V4 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-03-18 12:31   ` [v5 0/7] hinic3 change for support new SPx NIC Feifei Wang
2026-03-18 12:31     ` [V5 1/7] net/hinic3: add support for new SPx series NIC Feifei Wang
2026-03-18 12:31     ` [V5 2/7] net/hinic3: add enhance cmdq " Feifei Wang
2026-03-18 12:31     ` [V5 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-03-18 12:31     ` [V5 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-03-18 12:32     ` [V5 5/7] net/hinic3: add rx " Feifei Wang
2026-03-18 12:32     ` [V5 6/7] net/hinic3: add tx " Feifei Wang
2026-03-18 12:32     ` [V5 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-01-31 10:05 ` [PATCH 2/7] net/hinic3: add enhance cmdq support for new SPx series NIC Feifei Wang
2026-01-31 10:05 ` [PATCH 3/7] net/hinic3: use different callback func to split new/old cmdq operations Feifei Wang
2026-01-31 10:06 ` [PATCH 4/7] net/hinic3: add fun init ops to support Compact CQE Feifei Wang
2026-01-31 10:06 ` [PATCH 5/7] net/hinic3: add rx " Feifei Wang
2026-01-31 10:06 ` [PATCH 6/7] net/hinic3: add tx " Feifei Wang
2026-01-31 10:06 ` [PATCH 7/7] net/hinic3: use different callback func to support htn fdir Feifei Wang
2026-01-31 18:17   ` [REVIEW] net/hinic3: use different callback func to support htnfdir Stephen Hemminger
2026-02-02  1:17     ` 回复: " wangfeifei (J)

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=20260321103200.267c3610@phoenix.local \
    --to=stephen@networkplumber.org \
    --cc=chenyi221@huawei.com \
    --cc=dev@dpdk.org \
    --cc=wff_light@vip.163.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox